zoukankan      html  css  js  c++  java
  • UWP 系统级页面导航

    UWP之前,要实现应用内页面后退,Win8.1要自己弄一个后退按钮,WP8.1还可以选择Handle后退按钮事件。

    而在UWP中,后退的实现变得更加方便。

    在Windows.UI.Core命名空间里,有SystemNavigationManager这么个东西,

    只需handle它的BackRequested事件,就可以响应各种系统级的后退事件了,

    包括:UWP应用标题栏的后退按钮,Win10平板模式下任务栏上的后退按钮,Win10m的硬件后退按钮,快捷键Win+Backspace, 以及用Cortana触发的后退事件。

    1 SystemNavigationManager.GetForCurrentView().BackRequested += 
    2     App_BackRequested;
    private void App_BackRequested(object sender, BackRequestedEventArgs e)
    {
        Frame rootFrame = Window.Current.Content as Frame;
        if (rootFrame == null)
            return;
    
        // Navigate back if possible, and if the event has not 
        // already been handled .
        if (rootFrame.CanGoBack && e.Handled == false)
        {
            e.Handled = true;
            rootFrame.GoBack();
        }
    }

    另外,标题栏的后退按钮可以通过SystemNavigationManager来控制是否显示。

      if (rootFrame.CanGoBack)
                {
                    // If we have pages in our in-app backstack and have opted in to showing back, do so
                    SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility = AppViewBackButtonVisibility.Visible;
                }
                else
                {
                    // Remove the UI from the title bar if there are no pages in our in-app back stack
                    SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility = AppViewBackButtonVisibility.Collapsed;
                }

    话说这东西我翻文档翻了半天才找到...

    参考:https://msdn.microsoft.com/en-us/library/windows/apps/mt465734.aspx

  • 相关阅读:
    教你如何剖析源码
    Java 简介
    java 入门-helloWorld
    linux yum 命令
    Linux vi/vim
    Linux 磁盘管理
    Linux 用户和用户组管理
    Linux 文件与目录管理
    Linux 文件基本属性
    Linux安装Mysql
  • 原文地址:https://www.cnblogs.com/Zixx/p/4868937.html
Copyright © 2011-2022 走看看