WinUI3를 하면서 제일 건들고 싶었던 부분이다. (하나 더 있는데, 그건 WindowStyle. 나중에 얘도 어떻게 건들어야겠다)
얘는 wpf처럼 그냥 ResizeMode=ResizeMode.NoResize를 할 수 없고,
window에도 Height=~~, Width=~~도 할 수 없다.
불-편
아니 이게 왜 안되냐고요 솔직히 디자이너 없는 것도 엄청 불편하다고요
ApplicationView.PreferredLaunchViewSize = new Size(600, 600);
ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize;
찾아보니 인터넷에서는 위의 코드를 작성해보라는데.. 이건 작동하지 않는다.
uwp로 찬아봐서 그런지 uwp에서만 작동하는 듯..
//MainWindow.xaml.cs
public MainWindow() {
this.InitializeComponent();
GetAppWindowAndPresenter();
_presenter.IsResizable = false;
_appWindow.Resize(new Windows.Graphics.SizeInt32(600, 600));
}
private AppWindow _appWindow;
private OverlappedPresenter _presenter;
public void GetAppWindowAndPresenter() {
var hWnd = WinRT.Interop.WindowNative.GetWindowHandle(this);
WindowId myWndId = Microsoft.UI.Win32Interop.GetWindowIdFromWindow(hWnd);
_appWindow = AppWindow.GetFromWindowId(myWndId);
_presenter = _appWindow.Presenter as OverlappedPresenter;
}
(이번에도)인터넷 검색 결과, 해답을 얻을 수 있었다.
600, 600의 값을 넣어주었으므로 아래와 같은 정사각형의 뽀짝한 창을 얻을 수 있다.
그리고 창의 테두리에 가져다대도 변경 가능을 알리는 수직선(?)도 나오지 않는다
그리고, 오늘의 코드 출처:
https://github.com/microsoft/WindowsAppSDK/discussions/1694
How to disable window resize after the release of WinUI 3 1.0 Preview 3? · Discussion #1694 · microsoft/WindowsAppSDK
After upgrading my project to Preview 3, I can see that AppWindowConfiguration was removed, so how should I disable window resizing now? Do I have to go back to the old DllImport methods again?
github.com
'C# > WinUI3' 카테고리의 다른 글
[WinUI3] 체스 게임 만들기(1) (0) | 2023.02.06 |
---|---|
[WinUI3] 창 테두리 없애기, Title, Icon... 그리고 TitleBar. (2) | 2023.02.05 |
[WinUI3] FileOpenPicker 사용하여 이미지 불러오기 (0) | 2023.02.04 |
[WinUI3] Color Picker 사용기 (2) | 2023.01.28 |
[WinUI3] Navigation (0) | 2023.01.27 |