电话应用页面导航问题
我正在开发一个 Windows Phone 应用程序。
我有三个页面,P1、P2 和 P3。
从P1我可以去P2,从P2我可以去P3。
我只想在从 P3 返回到 P2 时执行一些代码。
我怎样才能做到这一点?
如果我只想在从 P1 到 P2 时执行另一个代码...
I'm developing a Windows Phone app.
I have three pages, P1, P2 and P3.
From P1 I can go to P2, and from P2 I can go to P3.
I want to execute some code only when I go back from P3 to P2.
How can I do that?
And if I want to execute another code only when I go from P1 to P2...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
重写
PhoneApplicationPage
类的OnNavieratedFrom
方法,并将当前页面存储在全局静态变量中。也覆盖
OnNavigedTo
,您可以在其中检查变量并根据其值执行代码。当您的应用程序被逻辑删除时,不要忘记保留该变量,您可以将其保留在PhoneApplicatiopnPage.State
字典中Override the
OnNavigatedFrom
method of classPhoneApplicationPage
and store the current page in a global static variable.Override
OnNavigatedTo
as well, in there you check the variable and execute your code depending on it's value. Dont forget to persist the variable when your application gets tombstoned, you can persist it in thePhoneApplicatiopnPage.State
dictionary您尝试的操作与经典有限状态自动机的操作方式相匹配。您只需要一个在页面生命周期之外持续存在的变量即可实现此目的。
在 App.xaml.cs 中创建一个新的公共字符串属性。
在页面的 Page_Load 方法中,您可以检查上一页并对其进行操作。
What you are trying to to matches how classical finite state automata's do. You only need a variable that will persist beyond your page's life time to accomplish this.
Within App.xaml.cs create a new public string property.
Within your pages Page_Load method you can check the previous page and act on it.