日期:2014-05-17  浏览次数:20833 次

DataGridView插入时出错,出现两行空白。
DataGridView插入时出错,出现两行空白。
1. DataGridView数据绑定表dt
2. DataGridView的AllowUserToAddRows = ture (必须true,因为我希望在数据库的表dt中记录数为0时仍可进行插入操作)
3. 在进行插入操作时,代码如下:
        DataRow row = dt.NewRow();
                     row["regionid"] = this.txtRegionID.Text;
            row["regionName"] = this.txtRegionName.Text;
            row["MgrId"] = this.cboMgrID.SelectedValue;
dt.Rows.InsertAt(row, pos);
在点击添加按钮后,DataGridView中除了添加了代码设定的记录外,还多出了两个空行,其中第一个空白行导致错误。
错误提示如下:

而我用同样的方法,在其他界面上的操作则没有遇到这个问题,一直找不到原因。
这个问题已经困扰我两三天了,在网上找了很久都没找到想要的答案。
希望各位高手能给我指点一下迷津,谢谢各位了。

------解决方案--------------------
DataGridView的AllowUserToAddRows为true时,在末尾点击鼠标就会导致新记录的添加,然后你在右键菜单中又进行了添加,在菜单中添加的没有问题,因为你进行新记录的初始值的设定,而在DataGridView自动添加的记录中没有初始值的设定,所以对于不允许空值的字段就会产生异常了。