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