• 2018-2-13-win10-uwp-设置启动窗口大小--获取窗口大小


    title author date CreateTime categories
    win10 uwp 设置启动窗口大小 获取窗口大小
    lindexi
    2018-2-13 17:23:3 +0800
    2018-2-13 17:23:3 +0800
    Win10 UWP

    本文主要说如何设置我们窗口的启动大小,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 写我们拿到窗口大小

            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/

  • 相关阅读:
    HTTP协议--详解
    汇编语言前五章总结
    [转] vscode C/C++ 插件预定义环境变量(linux)
    C++小细节
    CC++ 如何确定一个变量的类型(恶心的指针)
    Ubuntu下安装tensorflow
    github 上不去
    应用层01-HTTP
    C++ 传递数组引用
    C++ 命令行窗口打印二叉树(图形)
  • 原文地址:https://www.cnblogs.com/lindexi/p/12085747.html
Copyright © 2020-2023  润新知