使用Selected,然后统一删除
为避免在循环中每次删除之后出现行数变化导致循环数量处理的不一致,建议使用DataGridView中的rows.selected统一选择行之后,然后一起处理。
'选择需要的行,标识为Selected
Dim configName As String = "What you need"
For i As Integer = 0 To DataGridView1.RowCount - 2
If InStr(DataGridView3.Rows(i).Cells(0).Value, configName) <> 0 Then
DataGridView3.Rows(i).Selected = True
End If
Next
'删除处理
For Each dgvRow As DataGridViewRow In DataGridView1.SelectedRows
If dgvRow.Cells(0).Value <> Nothing Or dgvRow.Cells(0).Value <> "" Then
DataGridView1.Rows.Remove(dgvRow)
End If
Next
也可以考虑从尾部行开始。
收工!
博客内容介绍了在VB.NET中如何高效地批量删除DataGridView中的行。为了避免在循环中因删除行导致行数变化的问题,建议先统一选择需要删除的行,然后一次性处理。示例代码展示了如何根据特定条件选中行,并从尾部开始删除,确保了遍历的稳定性。这种方法对于大数据量的表格操作尤其适用。
1825

被折叠的 条评论
为什么被折叠?



