前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >win10 uwp 设置启动窗口大小 获取窗口大小 设置启动窗口获得窗口大小

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

作者头像
林德熙
发布2018-09-18 16:12:47
5.2K0
发布2018-09-18 16:12:47
举报
文章被收录于专栏:林德熙的博客林德熙的博客

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

设置启动窗口

设置窗口大小

代码语言:javascript
复制
            ApplicationView.PreferredLaunchViewSize = new Size(1000, 1000);
            ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize;

ApplicationView.PreferredLaunchWindowingMode 设置UWP窗口全屏

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

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

代码语言:javascript
复制
ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize;

ApplicationView.PreferredLaunchWindowingMode =
ApplicationViewWindowingMode.Auto;

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

代码语言:javascript
复制
            var windows = CoreApplication.GetCurrentView().TitleBar;
            windows.ExtendViewIntoTitleBar = false;
            windows.ExtendViewIntoTitleBar = true;
代码语言:javascript
复制
ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.FullScreen;

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

窗口最小

代码语言:javascript
复制
ApplicationView.GetForCurrentView().SetPreferredMinSize(new Size(200, 100));

获得窗口大小

Window.Current.Bounds.Width

获取窗口高度

Window.Current.Bounds.Height

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

代码语言:javascript
复制
       <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 写我们拿到窗口大小

代码语言:javascript
复制
        public void NarrowVisual(object sender, VisualStateChangedEventArgs e)
        {
            //Window.Current.Bounds.Width  
            //Window.Current.Bounds.Height
        }

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


本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 设置启动窗口
  • 获得窗口大小
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档