Windows Phone - 跨页面保持PhoneApplicationPage的实例成员

时间:2012-06-02 12:25:49

标签: windows-phone-7

我在MainPage.xaml.cs中有一个Instance成员,即在从PhoneApplicationPage扩展的MainPage类中 当我导航到另一个页面并再次返回时,我希望获得Instance成员的值...如何在页面调用中保持不变? 只有几页,成员对象类很小

我应该推入PhoneApplicationService吗?进入州?

这是最干净,表现最好的方式吗?

第一次在Mobile dev ... Thanx提前:)

2 个答案:

答案 0 :(得分:1)

一般情况下,Page实例将保留在RAM中 - 因此您无需执行任何操作。

但是,在逻辑删除情况下,您的页面实例将从RAM中刷新。

要保留值或字符串,最简单的方法是将值保存/加载到IsolatedStorageSettings - http://msdn.microsoft.com/en-us/library/system.io.isolatedstorage.isolatedstoragesettings(v=VS.95).aspx

您可以使用OnNavigateTo方法加载它,并使用OnNavigatedFrom方法进行保存。

如果您需要保留更大或更复杂的对象,那么您可以使用JSON或XML来序列化/反序列化对象 - 您可以查看使用更常用的存储技术 - 例如IsolatedStorage中的文件或SQLCE,SQLite或Sterling等数据库解决方案

答案 1 :(得分:0)

我认为实例成员在导航期间不会被销毁,除非从backstack中移除页面或者应用程序被逻辑删除。您不必编写额外的代码行来保持实例成员的活动。因此,您不必将其存储在PhoneApplicationService的状态中。

相关问题