处理后退按钮,在WP7中更改页面

本文关键字:WP7 按钮 处理 | 更新日期: 2023-09-27 18:01:47

我有"MainPage"answers" friendpage "。我如何可以模拟后退按钮,如果用户点击后退按钮在"friendedpage"。MaiPage只能显示一次。

MainPage>Friendspage,不能返回.

我想我需要使用"OnNavigatedFrom"方法,但我不知道如何。

处理后退按钮,在WP7中更改页面

在按钮上点击call

NavigationService.GoBack();

or,在VB中。净,

NavigationService.GoBack()

以下是MSDN文档:http://msdn.microsoft.com/en-us/library/system.windows.navigation.navigationservice.goback.aspx

你应该能够处理/Override OnBackKeyPress并设置cancel = true以防止在应用程序中向后移动。

与WPF不同,Windows Phone应用程序不允许从backstack中删除页面。此外,还有认证要求,从应用程序的第一页(假设MainPage.xaml),用户应该能够点击"Back" &退出应用程序。所以,请仔细考虑你正在尝试做什么。

也就是说,有两种方法:

  • 覆盖,蚕食OnBackKeyPress:这可能会导致不和谐的用户体验。

  • 在MainPage中重写OnNavigatedTo()并抛出一个未处理的异常以退出应用程序或采取其他适当的操作(NavigationService.GoBack()或其他页面)。有一篇关于退出SL应用程序的帖子(在这里)。此外,如果使用GoBack(),请记住,你现在接管了一些责任来维护跳转后的backstack;

希望这对你有帮助!

也许有一种方法可以在不违反要求的情况下得到你想要的。

你的主页上有什么是你不希望用户返回的?从你有限的信息,听起来主页不应该是你的"主"页。

你可能希望你的好友页面成为主页,并有一个弹出窗口或其他东西,包括你在主页上的任何东西。

对于其他非标准的情况,有一些导航规则的例外,参见"非线性导航"的东西:http://windowsteamblog.com/windows_phone/b/wpdev/archive/2010/12/13/solving-circular-navigation-in-windows-phone-silverlight-applications.aspx