繁体   English   中英

如何在C#UWP应用程序框架中隐藏/处理后退按钮

[英]How to Hide/Handle back button in C# UWP App frame

我有一个UWP应用程序,它的工作流程只有几个步骤。

  1. 第1步
  2. 第2步
  3. 第三步
  4. 第四步

假设第4步最后一步 ,我想导航到“ Back Button”上的第2步(不是第3步),请在最后一步(第4步)中单击。

Step 4 -> (click back button) -> navigate to Step 2

如何处理ViewModel上的backbutton click事件?

要么

如何隐藏ViewModel上的“后退”按钮?

到目前为止,我已经在ViewModel的构造函数上尝试了以下方法。

SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility = AppViewBackButtonVisibility.Collapsed;
SystemNavigationManager.GetForCurrentView().BackRequested += (s, e) =>
{
   // Handle the Back pressed                
   NavigateToStep2();
};

以前,UWP应用使用AppViewBackButtonVisibility进行向后导航。 将继续支持该API以确保向后兼容,但我们不再建议依赖AppViewBackButtonVisibility。 相反,您的应用应绘制自己的应用内后退按钮。 有关更多信息,请参见UWP应用的导航历史和向后导航

根据您的描述,您的导航过程是高度定制的。 您需要制作自己的导航服务。 在您的应用程序中,您还需要制作自己的应用程序内后退按钮并将该命令绑定到ViewModel的导航命令。

我在项目中使用了Template10 它已经实现了NavigationService 我直接使我的ViewModels继承其ViewModelBase类以使用其导航服务。 非常方便 您可以查看Template10源代码以获取更多详细信息。 进行自己的导航服务将对您有所帮助。 或者,您也可以直接使用Template10 NavigationService。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM