У меня есть datagridview с 4 столбцами [Nam], [ID], [Shuru], [Payan] второй столбец ([ID]) скрыт и используется для сбора некоторых подробности о данных. это код нагрузки:Datagridview не выбирает первую строку после заполнения данных datasource
Private Sub SalMali_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.DGV_SalMaliTableAdapter.Fill(Me.FDBDataSet.DGV_SalMali)
End Sub
, который извлекает все в DGV_SalMali таблице. Я знаю, что datagridview автоматически выбирает первую строку после заполнения, поэтому я помещаю функцию в Change Selection для извлечения данных. вот код:
Private Sub DGV_SalMaliDataGridView_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DGV_SalMaliDataGridView.SelectionChanged
refreshDT()
End Sub
Public Sub refreshDT()
Dim cnt As Integer = DGV_SalMaliDataGridView.Rows.Count
If cnt = 0 Then
GoTo line
End If
unlockAll()
Dim sel As String = DGV_SalMaliDataGridView.SelectedRows(0).Cells(1).Value
Dim dt As New DataTable
dt = SalMaliTA.GetData_SalMali_B_ID(sel)
Dim dtr As DataRow = dt.Rows(0)
TextBox1.Text = dtr.Item(4)
MaskedTextBox1.Text = mc.MtoS(dtr.Item(1))
MaskedTextBox2.Text = mc.MtoS(dtr.Item(2))
CheckBox1.Checked = dtr.Item(3)
Exit Sub
line:
lockAll()
End Sub
, но когда я называю refreshDT()
выбор больше не работает. он выдает ошибку на линии 8 refreshDT()
sub { exactly here : Dim sel As String = DGV_SalMaliDataGridView.SelectedRows(0).Cells(1).Value }
Брошенный: «Индекс был вне диапазона Должно быть неотрицательным и меньше, чем размер коллекции.» (System.ArgumentOutOfRangeException) Исключение Message = "Index был вне диапазона. Должно быть неотрицательным и меньше, чем размер коллекции.", Exception Type = "System.ArgumentOutOfRangeException"
DataGridView имеет строк, и я не знаю, в чем проблема. спасибо за помощь.