如何从DataGridView中的行获取DataRow

时间:2009-11-30 20:52:49

标签: c# winforms datagridview datatable

我正在使用数据绑定Windows窗体DataGridView。如何从DataGridView中的用户选定行转到DataRow的{​​{1}}来源?

4 个答案:

答案 0 :(得分:41)

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

假设你绑定了一个普通的DataTable

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

假设您绑定了一个类型化的数据表。

有关详细信息,请参阅article on MSDN

答案 1 :(得分:8)

DataTable table = grdMyGrid.DataSource as DataTable;
DataRow row = table.NewRow();
row = ((DataRowView)grdMyGrid.SelectedRows[0].DataBoundItem).Row;

答案 2 :(得分:2)

DataGridViewRow中是一个名为DataBoundItem的属性类型的对象。

这将包含DataRowView(为了确定您可以检查此内容)

答案 3 :(得分:0)

在Visual Studio 2017 .NET 4.5中,我成功使用

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