简而言之,我只想在某个页面上处理后退按钮以返回上一页,但在其余页面上忽略(让默认操作/关闭应用程序)。
因此,对于我的示例,我只想处理CurrentPage的后退按钮。所以,我将此代码放在我的CurrentPage.xaml.cs
上public CurrentPage()
{
this.InitializeComponent();
SystemNavigationManager.GetForCurrentView().BackRequested += App_BackRequested;
}
private void App_BackRequested(object sender, BackRequestedEventArgs e)
{
this.Frame.Navigate(typeof(PreviousPage), e);
e.Handled = true;
}
但是,当我进入PreviousPage时,按Back Button将再次转到PreviousPage。我无法退出应用程序。
如果我在PreviousPage.xaml.cs上添加它,那么从CurrentPage按BackButton将返回PreviousPage并自动关闭应用程序。
public PreviousPage()
{
this.InitializeComponent();
SystemNavigationManager.GetForCurrentView().BackRequested += App_BackRequested;
}
private void App_BackRequested(object sender, BackRequestedEventArgs e)
{
Application.Current.Exit();
e.Handled = true;
}
您是否知道如何在单页上处理后退按钮?
答案 0 :(得分:0)
当您离开CurrentPage时,您还应该删除后退的事件处理程序SystemNavigationManager.GetForCurrentView().BackRequested -= App_BackRequested;
。如果没有这个,即使您已经离开页面,代码也会被调用。