请教!!!如何实现 DataGrid中 按钮列的删除!!!
Public strConnection, strselect As String
Public myAdapter As SqlDataAdapter
Public myConnection As SqlConnection
Private Sub myDataGrid_DeleteCommand1(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles
myDataGrid.DeleteCommand
Dim articleId As Integer
articleId = myDataGrid.DataKeys(e.Item.ItemIndex) '获得主键值
Dim myConnectionstring As String = "server=localhost;uid=sa;pwd=;Database=softlab "
Dim myConnection As New SqlConnection(myConnectionstring)
Dim deletestr As String = "delete from article where article_id=' " & articleId & " '"
Dim myCommand As SqlCommand
myCommand = New SqlCommand(deletestr, myConnection)
myConnection.Open()
myCommand.ExecuteNonQuery()
myConnection.Close()
If myDataGrid.CurrentPageIndex < 0 Then
Response.Redirect("/")
Else
myDataGrid_Bind() '最后一页被删除完后出现错误,有待解决
End If
End Sub
提示错误:
索引超出范围。必须为非负值并小于集合大小。参数名: index
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。参数名: index
源错误:
行 178:
行 179: Dim userid As Integer
行 180: userid = DataGrid1.DataKeys(e.Item.ItemIndex) '获得主键值
行 181: Dim myconnectionstring As String = "server=localhost;uid=sa;pwd=;database=softlab"
行 182: Dim strconnection As SqlConnection = New SqlConnection(myconnectionstring)
请教指点!!