在Xaml中:

ItemsSource="{Binding Path=GridDataSource.PoliceforceDataSource}"

在ViewModel中:

ObservableCollection<PoliceData> policeforceDataSource = new ObservableCollection<PoliceData>();

public IEnumerable<PoliceData> PoliceforceDataSource
        {
            get { return policeforceDataSource; }
        }

说明:

1:属性PoliceforceDataSource是只读的,并且IEnumerable<T>没有Add、Remove等可更改集合的方法,所以对外只能提供“只读”的数据源(通常使用IEnumerable<T>来实现)

2:如果要对数据源进行更改,只能在定义属性的类的内部通过“操作”policeforceDataSource字段来实现,该字段的更改会自动通知“目标”

   另外,如果需要“集合属性”对外只读(即 不可以 “直接”给 属性 赋值),但可以通过属性的Add、Remove等方法更改集合(即使 集合本身 发生改变),则可以使用IList、ICollection、List等,如下面的例子:

ObservableCollection<TwoLevelTreeNodeViewModel> childNodes;

public IList<TwoLevelTreeNodeViewModel> ChildNodes
          {
              get { return childNodes; }
          }

ItemsSource数据源 或 集合属性 的定义 ——> 的数据源定义(典型)的更多相关文章

  1. 定义集合属性(WPF)

    在wpf中,定义集合属性时,字段可以使用“ObservableCollection<T>”定义,以保证数据改变时的自动通知功能:属性可以使用“ICollection”定义,保证属性的灵活性 ...

  2. WPF自定义依赖集合属性无法触发更新的问题

    通常WPF中通过继承UserControl的来快速创建自定义控件,最近项目上需要设计一个卫星星图显示控件,最终效果如下图所示.完成过程中遇到了自定义集合依赖属性无法触发更新通知的问题,在此记录一下,方 ...

  3. [原创]java WEB学习笔记98:Spring学习---Spring Bean配置及相关细节:如何在配置bean,Spring容器(BeanFactory,ApplicationContext),如何获取bean,属性赋值(属性注入,构造器注入),配置bean细节(字面值,包含特殊字符,引用bean,null值,集合属性list map propert),util 和p 命名空间

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  4. Hibernate映射集合属性

    Hibernate要求持久化集合属性字段必须声明为接口,实际的接口可以是java.util.Set,java.util.Collection,java.util.List,java.util.Map, ...

  5. C# UserControl集合属性使用

    在UserControl中,定义集合属性时,如果直接使用List是检测不到在属性框中的列表修改变化的,可以通过 ObservableCollection() 实现 1.定义类 [Serializabl ...

  6. Spring学习--集合属性

    Spring 中可以通过一组内置的 xml 标签(例如: <list> , <set> 或 <map>) 来配置集合属性. 配置java.util.Set 需要使用 ...

  7. 使用collection查询集合属性

    介绍resultMap中使用collection查询集合属性 业务需求,查询部门中的多个人员 public class Department { private Integer id; private ...

  8. Spring基础07——配置集合属性

    1.集合属性 在Spring中可以通过一组内置的xml标签(例如<list>,<set>或<map>)来配置集合属性. 2.配置List集合 配置java.util ...

  9. wpf 通过为DataGrid所绑定的数据源类型的属性设置Attribute改变DataGrid自动生成列的顺序

    环境Win10 VS2019 .Net Framework4.8 在wpf中,如果为一个DataGrid绑定到一个数据源,默认情况下DataGrid会为数据源类型的每个属性生成一个列(Column)对 ...

随机推荐

  1. zzUbuntu安装配置Qt环境

    zz from http://blog.csdn.net/szstephenzhou/article/details/28407417 安装 QT4.8.6库+QT Creator 2.5.0 下载地 ...

  2. 使用python操作json文本文件

    使用python读写文本文件内容时,我们知道如果文本文件里的内容无规律,那么修改起来比较麻烦.但是如果文本文件存储是有规律的,比如JSON格式,在利用python内置的函数把JSON格式的数据转成py ...

  3. KDDCUP CTR预测比赛总结

    赛题与数据介绍 给定查询和用户信息后预测广告点击率 搜索广告是近年来互联网的主流营收来源之一.在搜索广告背后,一个关键技术就是点击率预测-----pCTR(predict the click-thro ...

  4. mysql相关配置

    http://www.cnblogs.com/cnblogsfans/archive/2009/09/21/1570942.html http://www.jb51.net/article/31902 ...

  5. PL/SQL 表约束

    1. 表相关 a. 主键:constraint [主键的约束名] primary key b. 外键:constraint [外键约束名] foreign key( ) references []() ...

  6. vue我的总结+转原理

    我的总结 vue:1 mvvm模型,model,view,viewmodel,自底层向上,逐渐增加的模式2 .vue文件 包含html css js 有最近设计原则,将自己需要的放到最近,2 组件化 ...

  7. 零基础学习openstack【完整中级篇】及openstack资源汇总

    1.你是如何学习openstack的?2.你对openstack的组件了解多少?3.你认为openstack该如何学习? 一直想写关于openstack的方面的内容,今天终于整理完成.算是完成一桩心事 ...

  8. Ubuntu下安装keras

    0 系统版本Ubuntu16.04 1 系统更新 sudo apt update sudo apt upgrade 2 安装python基础开发包 sudo apt install -y python ...

  9. java中boolean类型占几个字节

    java的基本数据类型中,boolean只有两种状态,默认值为false.取值范围是{true,false},理论上占1bit,实际上: 1.单个的boolean 类型变量在编译的时候是使用的int ...

  10. Vue限制输入框只能输入整数

    首先,得明确监听input输入框变化的方法是input,不是change. 方案一:type= "number" 作用: 成功禁止输入字母 能输入小数点,第一位可以为0,小数点能输 ...