我正在开发一个简单的Windows Phone应用程序,它基本上具有以下功能:
所以这里有一个问题:
我希望在这种情况下保持第2页的数据存活,所以每次从第3页返回时我都不必重新初始化第2页。这将是完美的我可以保持某个地方的第2页的实例,并且每次我想从第3页返回时都使用它。到目前为止,我知道有两种方法,一种是在Page2 xaml中我可以有类似的东西:
<Page
x:class "Page2.keepPageAlive"
...
另一个正在使用AddBackEntry。但我不确定哪一个适合我的情况,或者还有其他好方法。
请分享您的想法,谢谢。
答案 0 :(得分:2)
只要您从page2导航到page3,并使用NavigationService.GoBack()返回page2,page2实例将保持活动状态。所以你基本上没什么可改变的。
答案 1 :(得分:1)
在WP7导航堆栈中,第2页仍然存在。因此,如果您从第1页导航到第2页到第3页,则存在所有3个页面。
如果从第3页调用NavigationService.GoBack(),它将弹出关闭并恢复先前的第2页实例,而不是创建第2页的新实例。这也是当您点击“返回”按钮时会发生的情况
只有在调用NavigationService.Navigate()时才会创建新实例。