VB.Net删除DataGridView最后一行

DataGridView控件删除最后一行时遇到了麻烦,在网上搜索了一下,解决方法如下:

1. 在窗体的设计状态下,将其设置为不允许用户添加新行。

2. 这时,删除最后一行就没有问题了。

3. 在代码中设置:.AllowUserToAddRows = False,删除最后一行时同样出错。

DataGridView控件是在窗体设计界面手工添加的,并不是使用代码动态添加的。

使用代码动态添加这个控件,是否会遇到相应的问题,不清楚。

详细代码如下:

Dim I As Int16
With dgv_待开票
If .Rows.Count = 1 Then
  '此时只有一行,全部删除
  .Rows.Clear()
ElseIf .Rows.Count > 1 Then
  '此时有两行以上.
  I = .CurrentRow.Index
  '先将是否允许添加行设置为 不可以
  '.AllowUserToDeleteRows = False ‘从这里可以看出,试图用代码设置为不可添加新行,但在删除最后一行时仍然出错。
  '.Rows(0).Selected = True '有网友提出选中任意一非删除行,然后再删除最后一行。试后发现在删除最后一行时仍然出错。
  .Rows.RemoveAt(I)
  '.AllowUserToDeleteRows = True
  '再将是否允许添加行设置为 可以
End If
End With

猜你喜欢

转载自www.cnblogs.com/doctor-cao/p/12758155.html