首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从帧的历史记录中删除页面?

如何从帧的历史记录中删除页面?
EN

Stack Overflow用户
提问于 2012-06-30 23:55:41
回答 3查看 6.2K关注 0票数 3

如何在WinRT XAML应用程序中操作帧的历史记录?

用户将从我的集线器页面开始,在那里他们可以选择一个现有的项目转到它的编辑屏幕,或者他们可以选择“新项目”。“新建项目”将带他们通过一个简短的向导,然后带他们到“编辑项目”屏幕。

向导页面只是我在框架中导航到的页面是有意义的;这样,如果用户改变主意,就可以退出向导。(只有两页,所以“后退”可以代替“取消”。)但是,一旦完成了向导并提交了更改,这些向导页面就不再存在于历史记录中;如果用户单击“编辑项目”页面的返回,我希望它们直接返回到中心。

为了说明,我希望流看起来像这样:

  • 帧历史:枢纽。用户点击“新项目”。
  • 帧历史记录:集线器->向导第1页。用户单击“下一步”。
  • 帧历史记录:集线器->向导页1 ->向导页2用户单击“完成”。
  • 帧历史:集线器->编辑项目。

框架似乎没有任何类似于“从历史中删除”的方法。文档确实暗示有某种方法可以覆盖历史记录,因为GoBack的文档说“如果框架管理自己的导航历史记录,那么导航到后导航历史记录中的最新项”,但这就是它在这个主题上要说的全部内容--没有提到其他人如何管理历史记录。所以我不知道这是否有用。

一旦用户完成向导,如何从框架的历史记录中删除向导页?

EN

Stack Overflow用户

回答已采纳

发布于 2012-10-09 11:11:08

您可以通过调用框架上的SetNavigationState(string navigationState)从历史记录中删除页面。不幸的是,序列化navigationState的格式是“仅供内部使用”,因此仅更改字符串可能会在未来版本中破坏您的代码。

我只能想出一个将来的证明方法来完全清除导航堆栈:

  1. 在程序启动时,通过调用GetNavigationState保存空导航状态。
  2. 在为编辑项目页调用导航之前,使用空导航状态调用SetNavigationState。

您的“编辑项目”页面现在将是堆栈中的第一个页面。

票数 6
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11278569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档