我有一个主要的 Silverilght 项目和其他模块,我正在使用 Prism 将它们与 Unity 一起用于依赖注入。
我有一个依赖于 Unity 的模块,IRegionManager
它自然会被 Unity 注入。
我遇到的问题是,我得到的Regions
属性RegionManager
不包含任何区域,即使我已经在我的 Shell 中声明了其中两个区域,如下所示:
regions:RegionManager.RegionName="MainRegion"
我无法弄清楚这种行为的原因。我尝试RegionManager
使用将 a 注册为单例
Container.RegisterInstance<IRegionManager>(new RegionManager());
以及离开统一处理这个。但是,我得到了相同的结果:(
我想要实现的是将视图注入特定区域并激活它,这是无法使用的
_regionManager.RegisterViewWithRegion("MainRegion", typeof(MyView));
这就是为什么我需要掌握“MainRegion”对象本身并对其进行操作。
我希望有人能解决这个问题。我将非常感谢:)
编辑:我应该提一下,视图发现工作得很好,我可以RegisterViewWithRegion
,但是当我检查 的Regions
属性时RegionManager
,我发现它是空的!