我有一个应用程序,其中有一个小面板需要支持浏览器,如导航,如后退,前进和主页。因此,它还需要保存用户已经去过的面板的历史。我不认为我可以使用NavigationWindow,因为只有一小部分窗口会支持导航。
这样做的最佳做法是什么?我一直在看NavigationService和导航命令,比如NavigateBack等等。但是把这些东西绑在一起很难。
我也在使用Prism / MEF。
答案 0 :(得分:1)
您需要使用该地区的期刊。如果您获得区域管理器并获得对为该面板定义的Prism Region实例的引用。然后,您可以使用该区域的导航服务日志返回。如果您需要在导航到下一个视图时执行某些操作,还可以注册到该区域的NavigationService的Navigated事件。
mainRegion = this.RegionManager.Regions["MainRegionName"];
mainRegion.NavigationService.Navigated += NavigationService_Navigated;
mainRegion.NavigationService.Journal.GoBack();