有没有办法使用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)