实现DataGridView的双层表头功能

在国内做软件总是会遇到这样哪样的特殊问题,客户需要用双层表头来表示数据,在DataGridView 中找了无数个属性,这么强大的控件竟然没有这个小小的功能!百度、Google了一番,有好多解决方案,都是自己用GDI重绘表头,但都没给核心代码,好在这个也不复杂,只不过是个算法问题罢了。自己MSDN一番,基本上解决了。效果如下:

代码只有一句:this.GridView1.TitleHeader = new string[] {"2|合计|3"}; 

在设计时即可见到效果。

解释:

*利用DataGridView控件重载,实现双层表头功能。其中第一层可有合并列,
 * 第二层为基本列,即不包含合并列。
 * 使用:如果是双表头,ColumnHeadersHeightSizeMode 不能设置为AutoSize,
 * 同时最好把表头的Height设置为50,对于合并列,在属性中更改TitleHeader,
 * TitleHeader属性格式为:合并列起始位置从1开始|列名称|占列个数Colspan
 * 示例:5|去年同期|2,其意义是把第5和第6列合并,标题为“去年同期”。
 * 如果有多个合并列,请回车换行后按格式添加。
 * 不设置TitleHeader属性,控件仍为原基本功能。

这个上面不能上传文件,有需要的可以留下E-mail。

评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值