我正在开发一个Windows Phone应用程序,我有三个屏幕:
当用户登录并按下“登录”按钮时,我想从屏幕3返回到屏幕1。 现在我回到屏幕2并立即回到第一个。我不想显示2个屏幕。
是否可以这样做?
答案 0 :(得分:1)
第3页的某处添加
NavigationService.RemoveBackEntry();
这将从后台堆栈中删除第2页。现在,当用户点击后退键时,他将直接向后导航到第1页。
但正如Amal Dev所说,微软希望你让用户导航到上一页。这个规则似乎没有太多强制执行,它可能意味着"永远不会混淆用户"。如果您混淆了认证测试人员,您的应用将无法通过认证。
答案 1 :(得分: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();
答案 2 :(得分:-1)
您可以使用NavigationService.Navigate
方法。
NavigationService.Navigate(new Uri( string.Format("/your page name.xaml?val={0}", ValueTextBox.Text), UriKind.Relative));
请参阅以下链接。