Vb.net 从x到y删除行DataGridView

Vb.net 从x到y删除行DataGridView,vb.net,datagridview,Vb.net,Datagridview,所以,正如问题所说,有可能从a到b删除行吗?我已经尝试了两种类似的方法 Dim dgv As DataGridViewRowCollection = DataGridView1.Rows For Each rw As DataGridViewRow In dgv Console.WriteLine(rw.Index) If (rw.Index > iNbrRow) Then If (Not rw.IsNewR

所以,正如问题所说,有可能从a到b删除行吗?我已经尝试了两种类似的方法

        Dim dgv As DataGridViewRowCollection = DataGridView1.Rows

    For Each rw As DataGridViewRow In dgv
        Console.WriteLine(rw.Index)
        If (rw.Index > iNbrRow) Then
            If (Not rw.IsNewRow) Then
                Console.WriteLine("Delete : " & rw.Index)
                'dgv.RemoveAt(rw.Index)
            End If
        End If
    Next
但问题是,每次删除一行时,索引都会更改,因此不会删除所有行

p.S:inbrow=在表单加载时初始化的第2行的数量


谢谢,希望你们能提供帮助:S

如果从gridview的末尾开始,然后向后走,就不会发生这种情况:

For i As Integer = gView1.Rows.Count-1 To 0 Step -1
  If i > iNbrRow then
    ' delete the row
  end if
Next i

为什么要同时标记c#和vb?显然这是VB。@paqogomez我删除了它,因为我只是点击得太快或是其他什么,我的宝贝你也可以用linq选择它们,然后一次性删除它们<代码>dgv.Where(rw=>rw.Index>inbrow&&!rw.IsNewRow)我对Linq不太熟悉,无法理解这句话,但我会仔细研究一下的。谢谢你,没问题——我们习惯了“为每个人”而忘了方向。