web-dev-qa-db-fra.com

Comment obtenir un DataRow à partir d'une ligne dans un DataGridView

J'utilise une base de données Windows Forms DataGridView. comment passer d'une ligne sélectionnée par l'utilisateur dans la DataGridView à la DataRow de la DataTable qui en est la source?

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

En supposant que vous ayez lié une DataTable ordinaire.

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

En supposant que vous ayez lié un datatable dactylographié.

Consultez l'article sur MSDN pour plus d'informations.

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

Dans une DataGridViewRow est une propriété appelée DataBoundItem de type objet.

Cela contiendra une DataRowView (pour plus de certitude, vous pouvez le vérifier)

2
Captain Comic

Dans Visual Studio 2017 .NET 4.5, j'ai eu du succès avec 

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