我有“MainPage”和“FriendsPage”。如果用户点击“FrinedPage”中的后退按钮,我可以模拟后退按钮.MaiPage只能显示一次。
MainPage> Friendspage,没有返回
我想我需要使用“OnNavigatedFrom”方法,但我不知道怎么做。请帮助我。
答案 0 :(得分:4)
点击按钮
NavigationService.GoBack();
或者,在VB.NET中,
NavigationService.GoBack()
以下是MSDN文档: http://msdn.microsoft.com/en-us/library/system.windows.navigation.navigationservice.goback.aspx
答案 1 :(得分:0)
您应该能够处理/覆盖OnBackKeyPress并设置cancel = true以防止在您的应用中向后移动。
答案 2 :(得分:0)
与WPF不同,不允许在Windows Phone应用中从Backstack中删除页面。还有认证要求,从应用程序的第一页(假设MainPage.xaml),用户应该能够点击“返回”&退出应用程序。所以,请仔细考虑你在做什么。
那说,有几种方法:
覆盖&吃掉OnBackKeyPress:这可能会导致用户体验不佳。
覆盖MainPage中的OnNavigatedTo()并抛出未处理的异常以退出应用程序或采取其他适当的操作(NavigationService.GoBack()或其他一些页面)。关于退出SL应用程序(here)的帖子不错。此外,如果使用GoBack(),请记住,您现在承担了一些责任,在跳转后维护后台堆叠;可能必须在整个应用程序中始终如一地完成。
希望这有帮助!
答案 3 :(得分:0)
在不违反要求的情况下,可能有办法获得你想要的东西。
您的“主页”上有什么内容,您不希望用户返回? 从你有限的信息,听起来主页不应该是你的“主页”。
您可能希望将您的朋友页面作为主页面,并有一个弹出窗口或其他内容,包括您在“主页”上的内容。
对于其他非标准情况,导航规则有一些例外,请参阅“非线性导航”内容:http://windowsteamblog.com/windows_phone/b/wpdev/archive/2010/12/13/solving-circular-navigation-in-windows-phone-silverlight-applications.aspx