删除选定的gridview行

时间:2017-07-07 09:35:40

标签: asp.net gridview

尝试删除所选的gridview行。我读了几个网站并使用了代码,但是我收到了错误。我认为因为大多数代码我都看过他们使用DataGridView,这段代码在删除按钮事件中

   For i = 0 To myGridView.Rows.Count - 1 Step i + 1
        Dim delrow As GridViewRow = myGridView.Rows(i)
        If delrow.Selected = True Then
            myGridView.Rows.RemoveAt(i)
        End If
    Next

我得到的两个错误是:

1)RemoveAt不是GridViewRowCollection的成员 2)Selected不是GridViewRow的成员

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

我通常删除GridViews上的行,在每行上放一个ImageButton(带有垃圾桶)和一个Template Field,然后在RowDataBound事件上将“DeleteRow”事件和rowIndex与CommandName和CommandArgument

相关联
Protected Sub myGridView_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound
    If e.Row.RowType = DataControlRowType.DataRow Then
        Dim ib As ImageButton = e.Row.FindControl("ibDeleteRow")
        ib.CommandName = "DeleteRow"
        ib.CommandArgument = e.Row.RowIndex
    End if
end sub

Private Sub myGridView_RowCommand(sender As Object, e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles GridView1.RowCommand
    If e.CommandName = "DeleteRow" Then
        Dim rowToDeleteIndex as integer = e.CommandArgument
        myGridView.DeleteRow(rowToDeleteIndex)
    end if
end sub

Private Sub myGridView_RowDeleting(sender As Object, e As GridViewDeleteEventArgs) Handles GridView1.RowDeleting

End Sub