2011-05-16 91 views
1

我在WP7墓碑中遇到了一些问题。我的问题是,当我尝试突然出现墓碑并回来时,应用程序挂起。即在加载页面之后,我按下设备菜单按钮,并在几秒钟内按下了返回按钮(在实际页面消失之前按下后退按钮)。在此期间页面加载但应用程序挂起/后退按键不起作用。如果我们尝试一个缓慢的thombstone它是完美的工作。而且非常有趣的是,当墓碑装载和卸载事件的APP完美工作。请任何人帮我解决这个问题。“WP7”突发墓碑问题

+0

你有没有试着用调试器中运行附?如果是这样的话,会发生什么?你可以点击Debug | Break All,然后调试| Windows |线程并检查每个线程的调用堆栈,看它是否卡住,可能是在UI线程上做了一些应该在后台线程上完成的事情? – Damian 2011-05-16 10:55:49

+0

你能提供确切的详细信息如何repro这?网页上有什么?你在做什么来造成墓碑? – 2011-05-16 12:28:15

回答

1

这听起来像你的应用程序已经被停用,但没有墓碑。这不会导致App或Page控制器被调用,导致您的应用程序以意想不到的方式行事。我强烈建议阅读Windows Phone Silverlight Application Life Cycle文档。可发生

这种情况下,如果 按下开始和后退按钮上 手机快速连续用户:对上述物品的有关提取物。在此 的情况下,应用程序收到 取消激活事件,系统开始保存 应用程序的状态以执行应用程序 逻辑删除。在此操作完成之前, 已收到应用程序激活事件 。系统知道 应用程序未从 内存中删除,因此执行流程与 不同。具体做法是:

•这个应用程序的构造不叫。

•页面的构造不叫。

的应用程序,以确定 如果这种情况发生是 设置一个标志,表明如果 页面构造函数被调用的唯一途径。如果您在上面的部分 通知,该标志 在页面构造函数设置,并 在OnNavigateFrom事件清除。 在这种情况下,我们会收到 的OnNavigatedTo事件,但我们将看到 该页面的构造不 调用。这告诉我们我们的 应用程序没有墓碑。