我有一个两页的Windows 8应用程序。一个查看页面和一个设置页面。两个页面都使用相同的视图模型。我可以在页面之间传递视图模型来处理它,但是我不能保存状态,因为我已经在页面之间传递了一个复杂类型(它与它们如何保持引用并阻止您保存)。WinRT在页面间传递ViewModel
所以我想我需要保存并重新加载我的视图模型在每个页面上?对于什么是最佳做法,我找不到很好的参考。
我有一个两页的Windows 8应用程序。一个查看页面和一个设置页面。两个页面都使用相同的视图模型。我可以在页面之间传递视图模型来处理它,但是我不能保存状态,因为我已经在页面之间传递了一个复杂类型(它与它们如何保持引用并阻止您保存)。WinRT在页面间传递ViewModel
所以我想我需要保存并重新加载我的视图模型在每个页面上?对于什么是最佳做法,我找不到很好的参考。
通常WinRT通过根框架,在App.cs.中初始化。最好在MainPage中定义一个Frame对象,然后浏览这个框架内的所有页面。您的frame datacontext可以绑定到ViewModel。
这就是答案。我将数据上下文设置为页面而不是静态框架。然后我将它保存并加载到app.cs中,一切都很好。 – 2013-02-16 06:28:09