zoukankan      html  css  js  c++  java
  • 【Prism】MEF版UIComposition

    引言

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

    RegionContext

       这个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

    示例源码

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

    小结

        在官方文档Prism 4.0有更详细的说明,有兴趣可以去瞧瞧..

  • 相关阅读:
    git
    ComfortColor.xcs
    使用Jackson时转换JSON时,日期格式设置
    json和jsonp
    powerdesigner 将表中name列值复制到comment列 (保留原有comment)
    下滑线驼峰互转
    Tomcat
    git stash
    gitignore
    例题:大图轮播
  • 原文地址:https://www.cnblogs.com/caizl/p/4678577.html
Copyright © 2011-2022 走看看