A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© hongiqnglik 中级黑马   /  2013-8-3 22:30  /  1580 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在利用datagridview显示数据的时候需要动态修改列头,datagridview红的列为0,datatable中有两列,然后把datagridview的datasourse指向datatable,但是程序在运行过程中如果修改了列表头,则内容为空了,修改的代码为datatable.Columns[0].ColumnName = "ss";datatable.AcceptChanges();但是结束之后列表头要么没有变化,要么就是变化了 但是没有显示数据,之前datagridview中是有数据的。有谁遇到过这样的问题么?怎么解决的?帮忙解答下,非常感谢

4 个回复

倒序浏览
不知道楼主的列头什么样子,能否附上代码,跟图片啊?

回复 使用道具 举报
不太明白你表述的,附上代码咯
回复 使用道具 举报
datagridview绑定数据源:datagridview.DataSource=datatable
             1  不设置datagridview列的信息,同时设置datagridview.AutoGenerateColumns=true 会根据datatable列的信息自动生成对应的网格列,并绑定数据。这种方式修改了数据源列的
话应该清空列,重新绑定数据源。
             2  设置datagridview列(即自己写代码控制datagridview有哪些列)   则需要设置绑定的列的数据源 如:datagridview.Columns[0].DataPropertyName=''name" 这个名称与数据源datatable相应的列名对应,这种方式可以任意设置列的名字等,显示数据不会受影响。

这两种方式应该满足楼主的要求,可以试试啊。这个主要就是应该弄清楚: 网格绑定数据源时,网格内部做了哪些事情。
回复 使用道具 举报
not  ColumnName  but headertext
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马