在导航历史记录中跳过视图
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在导航历史记录中跳过视图相关的知识,希望对你有一定的参考价值。
有没有办法使用Prism(使用RegionManager.RequestNavigate)导航而无需在导航历史中推送视图。
我希望导航从ViewA
到ViewB
和从ViewB
到ViewC
而不添加ViewB
到navigation history
这样当我从GoBack()
调用ViewC
方法时它让我直接到ViewA
跳过ViewB
例如:
I am in ViewA
Call RequestNavigate(ViewB) -----> Show ViewB
Call RequestNavigateWithoutHistorisize(ViewC) ----> Show ViewC
Call GoBack() -------> Show ViewA
答案
而不是跳过添加到frame
的Navigation Stack
,考虑从frame
中导航后移除navigation stack
。
例如,导航到ViewA
的ViewB
现在从navigation stack
删除最后添加的元素(这意味着ViewB被删除)。导航到ViewC
。
现在如果你看到你的Back堆栈会有ViewA
和ViewC
所以当你打电话给GoBack()
它会直接带你到ViewA
。
使用以下代码删除NavigationStack
中的最后一个条目
frame.BackStack.RemoveAt(frame.BackStackDepth-1)
以上是关于在导航历史记录中跳过视图的主要内容,如果未能解决你的问题,请参考以下文章
在 Dataflow JavaScript UDF 中跳过记录