我有一个带有一些选项的主页。其中之一是导航到有两个箭头的第 1 页。一个导航到 page2、page3,另一个箭头 page3、page2、page1 像循环一样。还有一个导航到主页的箭头。
我想问一下,当用户按下后退按钮时,是否有办法从用户当前所在的任何页面终止应用程序,而不是浏览所有页面。
编辑
如果我想要当我按下后退以始终导航到主页时,我必须做什么?
我有一个带有一些选项的主页。其中之一是导航到有两个箭头的第 1 页。一个导航到 page2、page3,另一个箭头 page3、page2、page1 像循环一样。还有一个导航到主页的箭头。
我想问一下,当用户按下后退按钮时,是否有办法从用户当前所在的任何页面终止应用程序,而不是浏览所有页面。
编辑
如果我想要当我按下后退以始终导航到主页时,我必须做什么?
onbackkeypress
清除要退出应用程序的函数内的后退堆栈。它会正常退出应用程序。
[更新]
1) 清除回栈后。用于NavigationService.Navigate(new Uri("MainPage.xaml",UriKind.Relative));
遍历主页面并e.Cancel = true
在下一条语句中执行。
2) 或者清除后台堆栈到主页。并且自动后按会将您带到主页。在主页内完全清除函数内部的后退堆栈,OnNavigatedTo
以便第一项始终是您的主页,用户可以轻松退出。
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
{
while (NavigationService.CanGoBack)
NavigationService.RemoveBackEntry();
e.Cancel = true;
return;
}
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
{
while (NavigationService.CanGoBack)
NavigationService.RemoveBackEntry();
}
在终止应用程序的 OnBackKeyPress 中引发异常。
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
{
throw an exception();
}
希望这会奏效。如果它的 XNA
if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed)
this.Exit();
你也可以这样做,
查看
e.NavigationMode == System.Windows.Navigation.NavigationMode.Back
在OnNavigatedTo
事件中(您需要覆盖每一页)并调用
NavigationService.GoBack();
没有直接退出应用程序的方法.. 见这里