您的位置:首页 > 产品设计 > UI/UE

【Prism】MEF版UIComposition

2015-07-26 20:02 162 查看
[b]引言[/b]

UIComposition原版Demo在PrismV5的解压包里面.原Demo用了.net4.5版本的DLL,我改成.net4.0的.

[b]RegionContext[/b]

这个Demo比之前那几个示例大概也只是多了一个新概念,那就是RegionContext.

众所周知,View的DataContext一般都是对应ViewModel,而Region很多时候也可以看成是一个View,所以Prism给了它一个RegionContext作为Region中多个子View的共享数据上下文.

一般用于Region是TabControl和ItemsControl控件.用法也比较简单,如下,先在Region中绑定数据源

<TabControl Grid.Row="1"
AutomationProperties.AutomationId="EmployeeSummaryTabControl"
Margin="8"
regions:RegionManager.RegionName="TabRegion"
regions:RegionManager.RegionContext="{Binding CurrentEmployee}"
Width="Auto"
Height="Auto"
HorizontalAlignment="Stretch"
ItemContainerStyle="{StaticResource HeaderStyle}">
</TabControl>


然后在子View的构造函数中获取RegionContext的值

employeeProjectsViewModel.CurrentEmployee =RegionContext.GetObservableContext(this).Value as Employee


[b]示例源码[/b]

http://pan.baidu.com/s/1jGAd6dS

[b]小结[/b]

在官方文档Prism 4.0有更详细的说明,有兴趣可以去瞧瞧..
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: