WPF Prism - 在弹出窗口中动态加载视图

时间:2010-01-30 12:06:20

标签: wpf view popup prism

我们在WPF中有基于MS Prism的多个项目解决方案。为了便于理解,我们可以使用项目shell和项目用户控件。 usercontrol项目具有各种功能的多个视图。我们在shell项目中有一个弹出窗口,它是从主shell窗口调用的,我想要的是根据需要将不同的视图加载到弹出窗口区域管理器中。任何通过流程说明或一些代码示例的帮助/建议都将非常值得注意。

问候

2 个答案:

答案 0 :(得分:2)

您可以使用Prism-v2 RI附带的PopupRegionBehavior来实现您尝试以分离方式执行的操作。您可以阅读更多相关信息here

如果有帮助,请告诉我。

谢谢, 达米安

答案 1 :(得分:1)

使用依赖注入容器(例如也可以从CompositeWPF Unity获取的Microsoft page),您将能够将IRegionManager的实例传递给各种模块/弹出窗口......

例如,在视图中你想要注入另一个视图,你可以有一个名为ItemsControl:

<ItemsControl cal:RegionManager.RegionName="Modules" />

要使用自定义视图填充它,您需要从代码中执行以下操作:

_regionManager.Regions["Modules"].Add(view);

(其中_regionManager可以是通过依赖注入填充到其所在类的构造函数的实例变量)。不要担心在容器中注册IRegionManager接口,这是UnityBootstrapper在配置期间完成的。