WPF中DataGrid使用自定义列绑定数据

本文通过一个实例展示了如何在WPF的DataGrid中实现自定义列绑定,以显示姓名和年龄。内容包括创建数据模型、ViewModel和UI绑定,以及使用转换器实现年龄不同颜色的显示。当年龄大于30岁时显示红色,小于20岁时显示绿色。同时,提到了添加SortMemberPath属性来实现列头排序功能。

本文用一个简单的例子进行演示,显示一个人的姓名和年龄。其中,年龄大于30岁的以红色显示,年龄小于20岁的以绿色显示。功能简单。

1、首先确定显示的表格有几列数据,分别显示为什么形式。建模时,DataGrid中的每一行代表一个对象,每一列代表一个对象中的一个属性。本例中一共有两列数据,姓名和年龄。先建立基本数据模型,代码如下。

2、确定基本数据模型之后,构思VM中的数据模型。这里需要显示多个人的姓名和年龄,所以VM中需要有一个Person类型的属性和一个Person类型的集合。VM中的代码如下所示。

3、完成VM部分后,开始写UI部分,并完成绑定,代码如下。


4、由于要显示不同的颜色,这里用了自定义列模板。还需要一个转换器。代码如下。


本例中名称空间为Why.WpfDemo。最后运行结果如下,


上述代码中年龄一列不能进行点击列头排序,只要在该列的模板中加入SortMemberPath="Age"即可,也就是设置SortMemberPath属性就可以了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值