如何在更新Datagridview时查找底层Datatable中的哪些行已更新?
问题描述:
这就是我想实现:如何在更新Datagridview时查找底层Datatable中的哪些行已更新?
- DataTable的人口使用从非数据库源
- 此表绑定到使用的BindingSource
- 在DataGridView由用户更新一个DataGridView,使数据一些细胞现在具有新的价值。
- 由于该表绑定到datagridview,所以其值更新。
如何获取网格/数据表中的更新行(已编辑的行)?
我曾尝试:
DataRow[] updatedRows =
_table.Select(null, null, DataViewRowState.ModifiedCurrent);
但这总是返回0行。有没有办法只得到修改的行?
最坏的情况:
- 保留原始表
- 的副本从datagridview的数据源
- 比较所有行获取新表。
谢谢!
答
如何:
DataTable changedRecordsTable = dataTable1.GetChanges();
你可以找到更多的细节在How to: Retrieve Changed Rows
我要补充:_table.AcceptChanges() – eastender 2010-08-03 12:18:15
哦,好。我很高兴它为你工作。 – DOK 2010-08-03 21:26:00