Joe*_*ite 3 frame windows-runtime winrt-xaml
如何在WinRT XAML应用程序中操作Frame的历史记录?
用户将从我的集线器页面开始,在那里他们可以选择现有项目进入其编辑屏幕,或者他们可以选择"新项目"."新项目"将通过一个简短的向导,然后将它们带到"编辑项目"屏幕.
向导页面只是我在框架中导航到的页面是有意义的; 这样,如果用户改变主意,用户就可以退出向导.(它只有两页,所以"后退"可以代替"取消".)但是一旦完成向导并且提交了更改,这些向导页面就不再有任何理由存在于历史中; 如果用户从"编辑项目"页面单击"返回",我希望它们直接返回到集线器.
为了说明,我希望流程看起来像这样:
框架似乎没有任何方法沿着"从历史中删除".文档确实提示可能有某种方法来覆盖历史记录,因为GoBack的文档说"导航到后面导航历史记录中的最新项目,如果框架管理自己的导航历史记录 "(强调我的),但那是所有这一切都要谈到这个主题 - 没有提到其他人如何管理它的历史.所以我不知道这是否有用.
用户完成向导后,如何从Frame的历史记录中删除向导页面?
您可以通过在框架上调用SetNavigationState(string navigationState)来从历史记录中删除页面.不幸的是,序列化navigationState的格式是"仅供内部使用",因此仅更改字符串可能会在将来的版本中破坏您的代码.
我只能想到一个完全清除导航堆栈的未来验证方法:
您的"编辑项目"页面现在将成为堆栈中的第一页.
| 归档时间: |
|
| 查看次数: |
4787 次 |
| 最近记录: |