Когда я использую DataTable
в качестве DataGridView
s DataSource
, мне часто приходится находить, какие строкипользователь выбрал и прочитал определенные значения из DataTable (не DataGridView)
Я хотел бы знать, есть ли надежный способ определить, какой DataRow
aDataGridViewRow
связано, особенно когда пользователь сортировал DataGridView по столбцу, отличному от порядка по умолчанию.
В настоящее время я использую код такого рода:
Dim sorting = ""
If DataGrid.SortOrder <> SortOrder.None Then
'get the actual row if the results are sorted'
sorting = "[" & DataGrid.SortedColumn.Name & "]" &
If(DataGrid.SortOrder = SortOrder.Ascending, "", " DESC")
End If
'return the selected row after sorting'
Dim selectedRowIndices = (From r In DataGrid.SelectedRows Select
DirectCast(r, DataGridViewRow).Index).ToArray
SelectedDataRow = (DataTable.Select("", sorting).Where(
Function(r As DataRow, i As Integer) i = selectedRowIndex)
).FirstOrDefault
Спасибо.