繁体   English   中英

如何使用MEF和WPF在Prism中向项目控件添加视图

[英]How to add views to an itemscontrol in Prism with MEF and WPF

我有一个应用程序,到目前为止只有2个视图。 视图1是一个列表,第二个是详细视图(在视图1中选择了一个项目之后)。

我在Prism外壳中设置了一个区域,可以加载我的模块。 我想要的只是最初加载模块1。 当我从1中选择一个项目时,我想导航到2(然后将显示在我的items控件中(顺便说一下,它是一个选项卡控件))。

我遇到的问题是我要么得到a)两种视图最初都显示在选项卡控件中。

b)如果将视图b的模块上的export属性更改为按需初始化,则当我单击导航以查看视图b时,什么也不会发生。

任何帮助将非常感激。 谢谢。

我通过发现所有视图来解决了这个问题,但是在初始化视图时,我停用了所有视图,接受我感兴趣的视图。当然,我正在寻找一种更好的方法:)

foreach (var view in RegionManager.Regions["RegionFoo"].Views)
{
  if (view.GetType() == initialViewType)
  {
     RegionManager.Regions["RegionFoo"].Activate(view);
  }
  else
  {
     RegionManager.Regions["RegionFoo"].Deactivate(view);
  }
}

在为该地区的贫困问题注册了视图之后,我将执行此操作。 initialViewType是您希望查找的视图类型。 这仅假设视图为单例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM