我有一个奇怪的问题:我导航到视图,我检查一个或多个 CheckBox 并导航(我没有覆盖 navigateFrom 方法)。然后,我再次导航到我的视图,并且未检查复选框。

这甚至是正常的行为吗?我是Windows Phone 7的Tombstonning“功能”的这一部分?如果是,这是否意味着每当我从视图导航,即使它在我的应用程序中,我也需要保存状态? (我是的,很烂...)

有帮助吗?

解决方案

听起来您正在做的是:

  1. 导航到页面
  2. 更改该页面UI上的内容(复选框)
  3. 从该页面返回
  4. 再次返回该页面

如果那是您正在做的事情,这就是正在发生的事情。

在第3点中,该页面被破坏了。如果您没有保存一些东西,那么该系统就不会为您神奇地保存。

在第4点中,创建了一个全新的页面。如果您没有编写任何代码来设置UI状态,则将是默认值。

据推测,复选框的检查状态代表了您的应用程序中的其他内容。因此,您可能应该考虑将其检查状态绑定到基础设置。

因为系统不知道您想要的变化是什么,而不是什么,所以它将其保留给您。

通常,最好在制作数据或设置更改后最好。无论您在应用程序中导航如何,您的应用程序在任何时候都可能会被墓碑延伸,并且您可能想保留该应用程序,并且它的数据/状态,因此用户不会因墓碑而失去任何东西或混淆。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top