【发布时间】:2020-01-03 18:21:03
【问题描述】:
我有一个区域,注册了多个视图。
问题是它们具有相同的名称但不同的命名空间。所以直到现在,我都在做这个
_regionManager.RequestNavigate(RegionsNames.MainSections, "StartView");
但这行不通,因为在我的情况下,我已经:
- A.B.C.Something.RootView
- A.B.C.SomethingElse.RootView
- A.B.C.SomethingElseElse.RootView
您如何要求导航到此?
他们的啤酒注册是这样的:
_regionManager.RegisterViewWithRegion(RegionsNames.MainSections, typeof(A.B.C.Something.RootView ));
_regionManager.RegisterViewWithRegion(RegionsNames.MainSections, typeof(A.B.C.SomethingElse.RootView));
_regionManager.RegisterViewWithRegion(RegionsNames.MainSections, typeof(A.B.C.SomethingElseElse.RootView));
我不想重命名它,我们有几个具有相同结构(因此名称)的模块。
【问题讨论】:
-
RegisterViewWithRegion不注册导航,它立即将视图放入区域中 -
@Haukinger 对不起,你说得对,这个视图被放在标签视图中,我正在寻找激活正确的标签。
-
这就是导航的用途。将 tabcontrol-region 导航到所需的选项卡将创建该选项卡(如果它以前不存在),或者显示该选项卡(如果它已经存在)。
-
@Haukinger 但这代表了我的应用程序的 4 个部分,默认情况下它们需要全部显示,这可以通过导航完成而不需要导航吗?
-
在我的应用程序中,我通常在
OnInitialized中使用RequestNavigate("main-region", "initial screen"),我看不出RequestNavigate( "main-tabs", "tab1" ); RequestNavigate( "main-tabs", "tab2"); ...有问题,否则,不,没有导航的导航是不可能的;-)
标签: wpf xaml navigation prism