Как получить DataRow из строки в DataGridView - PullRequest
31 голосов
/ 30 ноября 2009

Я использую Windows Forms с привязкой к данным DataGridView. как перейти от выбранной пользователем строки в DataGridView к DataRow из DataTable, который является ее источником?

Ответы [ 4 ]

41 голосов
/ 30 ноября 2009
DataRow row = ((DataRowView)DataGridViewRow.DataBoundItem).Row

Предполагая, что вы связали обычный DataTable.

MyTypedDataRow row = (MyTypedDataRow)((DataRowView)DataGridViewRow.DataBoundItem).Row

Предполагая, что вы связали набранный тип данных.

Дополнительную информацию смотрите в статье на MSDN .

8 голосов
/ 07 декабря 2015
DataTable table = grdMyGrid.DataSource as DataTable;
DataRow row = table.NewRow();
row = ((DataRowView)grdMyGrid.SelectedRows[0].DataBoundItem).Row;
2 голосов
/ 30 ноября 2009

В DataGridViewRow есть свойство с именем DataBoundItem типа object.

Это будет содержать DataRowView (для уверенности вы можете проверить это)

0 голосов
/ 24 января 2019

В Visual Studio 2017.NET 4.5 у меня был успех с

 var row = (DataRowView) e.Row.DataItem;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...