C#Form编程,Datatable增加1行,Datagridview增加2行,不知道为什么
代码如下:
DataTable mydt = (DataTable)dataGridView1.DataSource;
mydt.Rows.Add(mydt.NewRow());
刚开始的时候,我使用上面代码在mydt中增加1行后,dataGridView1中自动增加1行。
不知道后来怎么回事,上面代码执行后,dataGridView1增加了两行
再次执行,dataGridView1就只增加1行,然后一直增加1行。
不去知道为什么,我把所有的代码都屏蔽了,只剩这两行,还是这样,百度里查到有一个人遇到过这种情况,说是用别的方法解决了,也没了下文
高手在吗
[解决办法]
代码已试过 没问题
楼主是否 是在加载的时候 默认有行空行
(这是启用添加默认生成的)
[解决办法]
datagridview的性中的AllowUserToAddRows默true,datagridview面板在你添加的行下面都默多1行,如果你不希望看到它,那就把AllowUserToAddRows置False,LZ不妨看
[解决办法]
DataTable mydt = (DataTable)dataGridView1.DataSource;
mydt.Rows.Add(mydt.NewRow());
楼主代码是在事件中吧,会不会是在添加新行过程中触发了事件,结果又添加了,而这种情况,不只两行了,会无穷多
楼主可以在试试这样
DataTable mydt=new DataTable();
mydt=……
[解决办法]
DataTable mydt = (DataTable)dataGridView1.DataSource;
mydt.Rows.Add();累赘
[解决办法]
DataTable mydt = (DataTable)dataGridView1.DataSource;//获取dataGridView1数据源
mydt.Rows.Add(mydt.NewRow());//已经New了一行了,然后又加了一行,是不是两行?
[解决办法]
不是这个问题,
mydt.Rows.Add(mydt.NewRow());
---------拆成2行代码是这样---------
DataRow row = mydt.NewRow();
mydt.Rows.Add(row);
[解决办法]
应该是 AllowUserToAddRows = true; 的原因。
[解决办法]
我看了半天也没看懂你为什么第一次就+了两行?信息不全,看不到东西。