将视图添加到区域时的KeyNotFoundException

时间:2013-01-17 12:53:29

标签: wpf prism mef region

使用MEFPrism。我有一个标有区域名称的窗格:

<telerik:RadPaneGroup prism:RegionManager.RegionName="MyModuleRegion" />

由于软件的性质,并不总是创建此窗格。基本上,可能在某些时候被创建,但我们不知道何时。因此,MyModule无法将其视图附加到“MyModuleRegion” - 由于该区域不存在而抛出KeyNotFoundException异常:

// Region still not created! Now what?!
IRegion region = regionManager.Regions["MyModuleRegion"]; // <-- !!
region.Add(view, "My Module");

如何在运行时将MyModule的视图映射到“MyModuleRegion”区域?也就是说,当通过xaml创建区域时,会注入视图。

1 个答案:

答案 0 :(得分:0)

您是否尝试过使用View Discovery? :)

    this.RegionManager.RegisterViewWithRegion(RegionNames.MyModuleRegion, typeof(MyView));

它应该工作......我希望! :)