我有一个使用Tab Control实现的“mainregion”,带有一些标签项。属性 ViewSortHint 会影响启动时选项卡项的排序,但这不是我想要的。
启动时,我想从配置文件中读取,并以编程方式立即显示一个特定的选项卡。有没有办法在Prism的架构中干净利落地做到这一点?
答案 0 :(得分:0)
这就是我的所作所为:
1。)我在 IModule 的构造函数中通过Unity DI传递了一个IConfigProvider(我自己的东西)实例(其中包括IRegionManager,IUnityContainer)。这个configProvider,只是一个传递的字典。它包含启动时检索的视图的最后一个视图名称(bootstrapper)。在我的每个视图中,当它们被激活时,它们会触发pubsub事件,告诉任何监听器订阅此PubSub事件的名称。在我的例子中,唯一的侦听器将其保存在配置文件中。
2。)在IModule期间 - >初始化
container.RegisterType(typeof(Object), typeof(TheViewClass), typeof(TheViewClass).FullName);
3.)我测试了该模块的名称(约定)与configProvider中的最后一个视图名称。如果有匹配。我也会打电话:
RegionManager.RequestNavigate(RegionNames.MainRegion, typeof(TheViewClass).FullName);
导航到它!!!
希望这有助于某人。