在以下博客文章中,作者描述了将页面状态(例如 TextBox 控件中的文本)存储在 Page State 字典中的需要,以便在页面之间导航时恢复它:
http://www.wintellect.com/CS/blogs/jgarland/archive/2011/01/26/a-matter-of-state-part-1.aspx
但是,我创建了一个非常简单的应用程序,它有一个页面,其中包含一个 Button、一个 TextBlock 和一个 ListBox 项目。该按钮通过 导航到一个虚拟页面NavigationService.Navigate
。现在,如果我滚动列表并在我的 TextBox 中输入一些文本,导航到虚拟页面,然后点击后退按钮,我可以看到我的文本仍然存在于 TextBox 中并且滚动位置被保留。
我的问题是,(除了墓碑之外)我是否需要在 UI 控件之间简单地导航时保持它们的状态?看起来frameowkr 为我做了这个(尽管上面的博客文章!)。