web-dev-qa-db-de.com

Wie bekomme ich eine DataRow aus einer Zeile in einer DataGridView?

Ich verwende ein datengebundenes Windows Forms DataGridView. Wie gehe ich von einer vom Benutzer ausgewählten Zeile in der DataGridView zur DataRow der DataTable, die ihre Quelle ist?

29
Dan Neely
DataRow row = ((DataRowView)DataGridViewRow.DataBoundItem).Row

Angenommen, Sie haben eine gewöhnliche DataTable gebunden.

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

Angenommen, Sie haben eine typisierte Datentabelle gebunden.

Weitere Informationen finden Sie im Artikel auf MSDN .

39
Neil Barnwell
DataTable table = grdMyGrid.DataSource as DataTable;
DataRow row = table.NewRow();
row = ((DataRowView)grdMyGrid.SelectedRows[0].DataBoundItem).Row;
8
Lev Z

In einer DataGridViewRow ist eine Eigenschaft namens DataBoundItem vom Typ object.

Dieses enthält eine DataRowView (zur Sicherheit können Sie dies überprüfen)

2
Captain Comic

In Visual Studio 2017 .NET 4.5 hatte ich Erfolg mit 

 var row = (DataRowView) e.Row.DataItem;
0
Pallavi