Prism Sample 4 View Discovery

前三节算是弄明白了Region是什么,但是定义了区域,怎样向区域中添加内容呢?内容是UserControl,即ViewA。

添加内容的方式有2种,一种叫View Discovery,一种叫View Injection。

第一种,先定义一个ViewA,内容很简单,只加一行字:

 <TextBlock Text="View A" FontSize="38" />

然后我们在主页面上添加一个Region,如同前面反复看到好几次的:

  <ContentControl prism:RegionManager.RegionName="ContentRegion" />

现在的问题就是,怎样把ViewA的内容显示在ContentRegion中呢? 这里用的是发现:

public partial class MainWindow : Window
    {
        public MainWindow(IRegionManager regionManager)
        {
            InitializeComponent();
            //view discovery
            regionManager.RegisterViewWithRegion("ContentRegion", typeof(ViewA));
        }
    }

这里是在RegionManager 中进行注册,注册的内容是区域和视图的关联关系。一个区域可以注册多个视图,但是显示哪个,就由后面的激活决定。后面的样例应该是有的。

 

上一篇:Prism Sample 21-PassingParameters


下一篇:如何使用prism进行统计分析(Analysis)?