2011-06-05 69 views
6

我有一个设置保存方法,我打电话,但我试图卸载,失去了焦点应用程序将关闭,并没有保存之前,得到任何一种方法。我应该何时保存应用程序设置以防止这种情况发生?什么时候应该保存Windows Phone 7上的设置?

我应该使用一个计时器并保存每30秒,或什么?

+0

您是否看到/阅读了Thombstoning教程? – 2011-06-05 15:40:27

回答

10

您保存的频率取决于您的应用程序。但是,关键时刻是:

  • 启动
  • 激活
  • 停用
  • 关闭

Launching当应用程序首先从主屏幕启动,Closing被调用的时候被调用用户按下后退键退出您的应用程序。当然,你很可能想要在Closing事件中保存永久数据。

Activated当用户通过Windows按钮关闭了应用程序并通过按下后退按钮返回时调用该按钮。如果用户第一次启动应用程序,则不会被调用。

同样,当用户按下按钮Windows时会调用Deactivated事件。根据您的应用程序,您需要在此时保存瞬态数据,以便在恢复时,您可以幻想您的应用程序根本没有关闭。 (否则,例如,即使用户在按下Windows按钮之前输入数据,所有文本框也将变为空白)。

这些是主要事件,所以你可以围绕它设计你的应用程序。有一点要记住的是,如果你的保存文件会很大,并且在closing事件被调用后花费的时间比10 seconds更长,你的应用程序将立即终止,可能会破坏保存文件。因此,对于大量保存文件,您应该提前进行增量保存(例如,在用户进行了应该保持永久保存的更改后)。

没有one size fits all解决方案,因为保存时间高度依赖于正在开发的应用程序的类型。阅读更详细的Execution Model MSDN Page,并提供代码示例。

+0

非常感谢,帮助了很多。 – Eric 2011-06-05 16:08:26

+1

@Eric - 不客气。关于墓碑,您可以在CodePlex上查看Tombstone Helper:http://tombstonehelper.codeplex.com/ – keyboardP 2011-06-05 16:10:21

相关问题