如何知道datagridview 哪些行被修改了

假如winform 的 datagridview有10行,用户修改了两行,在程序中怎么判断哪些行被修改?然后只update这两行就行了。我之前是把所有行都update一次,感觉那样很不好。

监听修改事件(并且判断值是否修改),然后把修改的这一行的id存入数组.在保存的时候取出数组中的数据,根据id,然后找到对应的行数,然后update
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-03-21
那就定义一个数组,你把里面存入你所更新的行数(或者主键值),到时候检索这个array就可以了啊。(*^__^*) 嘻嘻……
第2个回答  2017-11-02
监听修改事件(并且判断值是否修改),然后把修改的这一行的id存入数组.在保存的时候取出数组中的数据,根据id,然后找到对应的行数,然后update
第3个回答  2012-03-21
我记得有一种回车保存的方法,你网上找找看追问

我不需要即时保存修改的数据。我是想先标记起来某些修改行,然后按一个按钮再批量保存。

追答

那就当你修改的时候,把关键字段存起来,最后遍历一下

第4个回答  2012-03-21
个人认为还是全部update好追问

个人觉得不好,如果是几千条数据,只修改了1条,要全部update。多费时费力啊。

追答

说说我的理由哈
首先告诉你我做过的项目是两个页的,也就是说假如你要修改第五行的话,只能是点击修改按钮,然后跳到另一个页,也就是一次改一个数据。
上楼说的定义一个数组在检索,反正我是不会,也不知道怎么判断,假如我鼠标点了不改,会不会被检索,再或者我改了,还改成原来的数据,会不会被检索。
datagridview我们可以写分页的,我们写的东西就是为了方便客户,怎么可能整一个几千行的页,就算几百行的页也会影响打开速度吧

相似回答