Я выбираю строку в моем DataGridView, чтобы заполнить свои текстовые поля. Я нажимаю кнопку удаления, чтобы удалить выбранную строку из моего DataGridView и из моей базы данных Access. Я получаю ArgumentOutOfRangeException: индекс был вне диапазона. Должен быть неотрицательным и меньше размера коллекции. Имя параметра: индекс. Ошибка была для этой строки. Dim custStr As String = dgBartenderLabels.SelectedRows (0) .Cells ("CustNo"). Значение
Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click
Try
Dim ConnStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Gwen\Documents\Database1.mdb"
Dim sqlStr As String
Dim dt As New DataTable
Dim cmd As New OleDb.OleDbCommand
Dim OleDBConn1 As System.Data.OleDb.OleDbConnection = New System.Data.OleDb.OleDbConnection(ConnStr)
Dim ds As New DataSet()
OleDBConn1.Open()
Dim custStr As String = dgBartenderLabels.SelectedRows(0).Cells("CustNo").Value 'ERROR HAPPENS HERE
If MessageBox.Show("Do you want to delete?", "Confirmation", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) = DialogResult.Yes Then
sqlStr = "DELETE FROM TblLabelCustom_copy WHERE [CustNo] = custStr"
Dim da As OleDbDataAdapter = New OleDbDataAdapter(sqlStr, OleDBConn1)
cmd.CommandText = sqlStr
cmd.ExecuteNonQuery()
Else
MessageBox.Show("Deletion aborted", "Aborted", MessageBoxButtons.OK, MessageBoxIcon.Warning)
End If
dgBartenderLabels.Update()
OleDBConn1.Close()
Catch ex As Exception
MessageBox.Show(ex.ToString)
End Try
End Sub
![enter image description here](https://i.stack.imgur.com/Src2Q.png)