Skip to content

win10 uwp 设置启动窗口大小 获取窗口大小

Updated: at 08:22,Created: at 09:23

本文主要说如何设置我们窗口的启动大小,UWP启动窗口大小。

设置启动窗口

设置窗口大小

ApplicationView.PreferredLaunchViewSize = new Size(1000, 1000);
ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize;

ApplicationView.PreferredLaunchWindowingMode 设置UWP窗口全屏

在手机没有用,手机就全屏,其他没用

如果设置过屏幕大小导致了每次开启窗口都变小,那么可以简单使用(下面代码没有测试)

ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize;
ApplicationView.PreferredLaunchWindowingMode =
ApplicationViewWindowingMode.Auto;

和这个问题相似的还有,UWP的标题栏问题,我们通过设置了ExtendViewIntoTitleBar=true,导致了没有标题栏,但是如果我们之后设置了false,程序关闭后发现并没有用,简单的方法

var windows = CoreApplication.GetCurrentView().TitleBar;
windows.ExtendViewIntoTitleBar = false;
windows.ExtendViewIntoTitleBar = true;
ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.FullScreen;

设置发现我们的窗口没变小,其实使用下面代码

窗口最小

ApplicationView.GetForCurrentView().SetPreferredMinSize(new Size(200, 100));

获得窗口大小

Window.Current.Bounds.Width

获取窗口高度

Window.Current.Bounds.Height

但是如果我们需要判断我们的窗口大小变化的话,一个简单的方法,使用动态适应

<VisualStateManager.VisualStateGroups >
<VisualStateGroup CurrentStateChanged="{x:Bind View.NarrowVisual}">
<VisualState>
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="720"/>
</VisualState.StateTriggers>
<VisualState.Setters >
<!--<Setter Target="Img.Visibility" Value="Collapsed"></Setter>-->
</VisualState.Setters>
</VisualState>
<VisualState>
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowHeight="200">
</AdaptiveTrigger>
</VisualState.StateTriggers>
<VisualState.Setters >
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>

在后台绑定变化,我写在View的变窄,这样写有比较好的效率,一般需要获得是在窗口变化大,如果变化小,不需要进行获得。

然后在 View 写我们拿到窗口大小

Window.Current.Bounds.Width
public void NarrowVisual(object sender, VisualStateChangedEventArgs e)
{
//Window.Current.Bounds.Height
}

上面代码是 MasterDetail 使用的,参见 http://lindexi.oschina.io/lindexi/post/win10-uwp-%E7%AE%80%E5%8D%95MasterDetail/


知识共享许可协议

原文链接: http://blog.lindexi.com/post/win10-uwp-%E8%AE%BE%E7%BD%AE%E5%90%AF%E5%8A%A8%E7%AA%97%E5%8F%A3%E5%A4%A7%E5%B0%8F--%E8%8E%B7%E5%8F%96%E7%AA%97%E5%8F%A3%E5%A4%A7%E5%B0%8F

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。 欢迎转载、使用、重新发布,但务必保留文章署名 林德熙 (包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我 联系