IT技术学习网
IT技术学习网
您的位置: 主页 > 编程技术 > c# >

c# dataGridView 未将对象引用设置到对象的实例

2014-11-17 21:12 来源: IT技术学习网原创 阅读:

本文讲述c# dataGridView使用过程中,出现的"未将对象引用设置到对象的实例"报错的解决办法。

itjsxx.com这次碰到的dataGridView的 "未将对象引用设置到对象的实例"  报错有些邪门。

代码如下:

dataGridView1.DataSource = ds.Tables["w"];
dataGridView1.Columns[0].Width = 40;

调用dataGridView1.Columns[0].Width = 40;的时候,报错。

假如说DataSource没设置对,导致dataGridView1没有得到列,那么报错:未将对象引用设置到对象的实例 是正常的。

然而,我的DataSource是正确的,并且能获取到dataGridView1.ColumnCount的列总数是6,我也能在调试中看到dataGridView1.Columns中的每个元素,我甚至能messagebox.show出dataGridView1.Columns[0].Width的值是100

dataGridView1.DataSource = ds.Tables["w"];
MessageBox.Show(dataGridView1.Columns[0].Width.ToString());
dataGridView1.Columns[0].Width = 40;

我还尝试了null判断,也尝试了延迟循环,不管我怎么样确定dataGridView1.Columns[0]是已存在的对象引用,当我给它赋值的时候,它就是会报错:未将对象引用设置到对象的实例

我也尝试了重启vs,还是无效,这难道是bug吗?

最后,实在没办法,我只能用timer控件来延迟200毫秒后再赋值,问题解决。

这究竟是什么原因?我想破头也不明白。如过有碰到同样问题或有解决过此问题的朋友,还请本文下留言告知或讨论,非常感谢。

c# dataGridView 未将对象引用设置到对象的实例
转载需注明出处:IT技术学习网 http://www.itjsxx.com/csharp/dataGridView_uninitiated.html

评论文章 c# dataGridView 未将对象引用设置到对象的实例
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
IT技术学习网 - 关于我们 - 联系我们 - 版权声明 - 网站地图