0

我正在开发一个 Windows Phone 应用程序,我有三个屏幕:

  1. 主屏幕
  2. 登录选择画面。
  3. 登录屏幕。

当用户登录并按下“登录”按钮时,我想从屏幕 3 回到屏幕 1。现在我回到屏幕 2 并立即返回第一个屏幕。我不想显示 2 屏幕。

是否有可能做到这一点?

4

3 回答 3

1

在第 3 页的某处添加

NavigationService.RemoveBackEntry();

这将从后堆栈中删除第 2 页。现在,当用户点击返回键时,他将直接向后导航到第 1 页。

但正如 Amal Dev 所指出的,微软希望你让用户导航到上一页。这条规则似乎并没有被强制执行太多,它可能意味着“永远不要混淆用户”。如果您混淆了认证测试人员,您的应用将无法通过认证。

于 2012-09-30T07:48:49.043 回答
1

试试这个

假设您的页面被命名为 FirstPage.xaml、SecondPage.xaml、ThirdPage.xaml

//Check for the first page and remove the remaining back stack in your ThirdPage.xaml

  while(!NavigationService.BackStack.First().Source.OriginalString.Contains("FirstPage"))
  {
      NavigationService.RemoveBackEntry();
  }

  NavigationService.GoBack(); 
于 2012-09-30T07:54:32.440 回答
-1

您可以使用该NavigationService.Navigate方法。

  NavigationService.Navigate(new Uri( string.Format("/your page name.xaml?val={0}", ValueTextBox.Text), UriKind.Relative));

请参考下面给出的链接。

Windows Phone 7 中的简单导航

于 2012-09-30T05:37:48.227 回答