现在虽然很多人都在使用html5,还有不少人在使用 Silverlight ,包括我在内。
DataGrid 在使用中经常用于查询或报表展示,不免会用到合并表头或合并行的现象,网上有不少实现合并表头和合并行的示例或源码,但很多不成品,有的合并后不能拖动、而且每次需要编不同的样式(模板列)来实现,很麻烦,也有第三方的,要么收费,要么只需要一个数据展示,却要一带一大个DLL,因此根据网络的一些思路,编写了这个扩展组件,编译后DLL只有20多K。
目前暂不支持编辑,主要应用于数据展示(查询)。
有以下功能(提供源码以及详细的示例);
一、不需要编写任何样式、只需通过代码添加将 ColumnItem 集合添加到DataGrid,需要引用空间 using System.Windows.Controls ,才能添加扩展函数。
二、支持实现复杂的表头、不限分级层次;
三、复杂表头支持位置拖动、 列宽度拖动,组内列会按比例自动调整;
四、支持模拟行合并,即对象中存在集合成员;
五、支持自定义转换器(IValueConverter);
六、对象集合(ICollection<T>)和支持动态字典集合(ICollection<IDictionary<string, object>>)的绑定;
七、对象集合使用 AddBindingPathTemplateColumn 函数,字典集合使用 AddBindingParameterTemplateColumn 函数
八、下载地址和示例:
http://download.csdn.net/download/ycg_893/7945649
先来几张图: