日期:2014-05-18  浏览次数:21044 次

◆winform下如何判断datagridview中的新增、删除、修改状态◆
在datagridview中的进行新增行、删除行、修改行操作,通过按钮button进行统一判断,需要判断哪些行是新增、被删除行、被修改,然后再提交给服务器,现在新增的可以用通过isnewrow来获得,被删除行和被修改的如何判断,被修改的行,还需要判断前后的值,有什么好一点的解决方案


------解决方案--------------------
访问绑定的datatable,dt.Rows[0].RowState
Unchanged
 自上次调用 AcceptChanges 以来或由 DataAdapter.Fill 创建该行以来,没有进行任何更改。
 
Added
 已将该行添加到表中,但尚未调用 AcceptChanges。
 
Modified
 已更改了行的某个元素。
 
Deleted
 已从表中删除该行,并且尚未调用 AcceptChanges。
 
Detached
 该行不是任何 DataRowCollection 的一部分。 新创建的行的 RowState 设置为 Detached。 通过调用 Add 方法将新的 DataRow 添加到 DataRowCollection 后,RowState 属性的值设置为 Added。

将使用 Remove 方法,或使用 Delete 方法接着使用 AcceptChanges 方法从 DataRowCollection 中移除的行也设置为 Detached。