首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

dbgrid打开一张数据库表,修改一个cell的值后,点击别的cell就能更新成新数据,点击dbgrid的空白处如何就恢复成未修改前的数啦

2012-02-15 
dbgrid打开一张数据库表,修改一个cell的值后,点击别的cell就能更新成新数据,点击dbgrid的空白处怎么就恢复

dbgrid打开一张数据库表,修改一个cell的值后,点击别的cell就能更新成新数据,点击dbgrid的空白处怎么就恢复成未修改前的数啦?
dbgrid打开一张数据库表,修改一个cell的值后,点击别的cell就能更新成新数据,点击dbgrid的空白处怎么就恢复成未修改前的数啦?

[解决办法]

在 dbgrid 的MouseDown事件中加入以下代码就OK了
if ADOTable1.State in [dsinsert,dsedit] then
ADOTable1.Post;

如果用的ADOQuery就将ADOTable改成ADOQuery
[解决办法]
采用批量更新方式,界面上提交的数据只是提交到客户端内存,撤销就简单了。

CachedUpdates //设置批量更新方式
CancelUpdates //撤销更新

自行调试一下试试看。

热点排行