2

假设我有两页,A 和 B。

用户可以修改页面 A 上的内容,然后导航到页面 B。当他在页面 B 上时,他单击“返回”按钮转到页面 A。之前所做的一切都丢失了。

有一种方法可以通过使用获得完全相同的状态

this.NavigationCacheMode = 
        Windows.UI.Xaml.Navigation.NavigationCacheMode.Enabled;

但是有没有办法通过使用后退按钮来知道页面是否是第一次打开的?

4

1 回答 1

2

是的:

protected override void OnNavigatedTo(NavigationEventArgs e)
{
  if (e.NavigationMode == NavigationMode.Back)
  {
    // LoadPreviousSate...
  }
}

您还应该看看ApplicationExecutionStateOnLaunched在 App.xaml 中的事件)。如果您导航到页面 B,应用程序暂停,应用程序继续,用户导航到页面 ANavigationMode将会New

于 2012-05-02T12:23:56.357 回答