在RegionManager中找不到Region(使用PRISM)

时间:2010-01-29 14:05:29

标签: wpf prism cab

我在Prism写一个应用程序。我有一个用户控件,包含两个<ContentControl>控件。这些都分配了区域。用户控件托管在使用Window显示的ShowDialog()中 我正在使用视图发现将我的一个视图添加到一个区域,另一个我想将视图注入其区域。视图发现工作正常。但是,当我尝试引用其他区域来注入视图时,我得到了异常:

KeyNotFoundException
区域管理器不包含 MyRegion 区域。

当我查看RegionManagers区域时,我正在尝试注入视图的那个区域或者正在使用视图发现的区域。

我与壳牌的不同窗口有关系吗?我以为只有一个RegionManager,但是我的视图发现必须有两个仍在工作......?或者是因为我在应用程序生命周期的后期创建了两个新区域?或者是因为新区域不在我的MainRegion内?

修改
在进行一些挖掘之后,它看起来像是创建了Region,但它找不到RegionManager的实例,所以它不会被添加。有线索吗?

1 个答案:

答案 0 :(得分:7)

现在排序。我需要在我的演示者类的构造函数中注册区域管理器 这样我新窗口中的区域就可以找到我的全球区域经理。

RegionManager.SetRegionManager(view as DependencyObject, regionManager);