以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  保存数据  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=49012)

--  作者:xiaohuli
--  发布时间:2014/4/10 16:40:00
--  保存数据
 想实现在编辑窗口里,如果数据有修改,关闭之前提示要保存,保存后才可以关闭窗口,如果数据未修改,则可以直接关闭
这个怎么实现
我再BeforeClose写了代码如下:
If Tables("gdzc").Current.DataRow.RowState <> DataRowState.unchanged Then \'如果当前行已经修改过
Dim Result As DialogResult
Result = MessageBox.Show("请先保存记录", "提示")
e.Cancel = True
End If
可是这个代码不对,就算是没有修改数据,他也会提示“请先保存记录”,这个怎么改呀

--  作者:Bin
--  发布时间:2014/4/10 16:41:00
--  
用HasChanges 判断 

If DataTables("X").HasChanges Then


--  作者:xiaohuli
--  发布时间:2014/4/10 16:50:00
--  
我按你说的做了,就算没有修改数据,他也提示得要保存,没修改就应该直接关闭,修改了才应该出现提示呀。
--  作者:Bin
--  发布时间:2014/4/10 16:52:00
--  
按道理不会的,请上例子.
[此贴子已经被作者于2014-4-10 16:53:19编辑过]

--  作者:xiaohuli
--  发布时间:2014/4/10 16:55:00
--  
在编辑窗口的文本框里随便点击几下,没改变数据,他也提示要保存记录,要是一打开编辑窗口就直接关闭的话倒是不提示保存。
--  作者:Bin
--  发布时间:2014/4/10 16:57:00
--  
是不是你设置了代码改变了值,或者值有空白,双击自动去掉了空白所以导致改变了值.

具体还请上个例子才好判断哦.