以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]关于BeforeSaveDataRow事件 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=34775) |
-- 作者:ifastudy -- 发布时间:2013/6/15 11:07:00 -- [求助]关于BeforeSaveDataRow事件 用户录入数据后,我在BeforeSaveDataRow写了数据校验代码 If e.DataRow("款式")="" MessageBox.show("你没有填写款色[" & e.DataRow("款色") & "]的款式,请填写") e.Cancel = True Else Dim dr As DataRow = DataTables("款式信息").Find("款式=\'" & e.DataRow("款式") & "\'") If dr Is Nothing MessageBox.show("你没有填写款色[" & e.DataRow("款色") & "]的款式,请填写") e.Cancel = True Return End If End If 提示正常,数据录入错误的行,没有保存,但问题是数据正常的行也没有保存. e.Cancel = True会将所有的保存事件取消吗? [此贴子已经被作者于2013-6-15 11:07:50编辑过]
|
-- 作者:lsy -- 发布时间:2013/6/15 11:13:00 -- 上个小例子,三下五去二,就弄明白了,不上例子,还得从头做,不费事费时么? |
-- 作者:Bin -- 发布时间:2013/6/15 11:13:00 -- 取消是会取消整个保存的哦. |
-- 作者:Bin -- 发布时间:2013/6/15 11:14:00 -- 所以你这个最好在输入完成的时候就验证一下.不要等到保存的时候才验证. |
-- 作者:zaianda -- 发布时间:2013/6/15 11:20:00 -- 把 return 去掉 |
-- 作者:Bin -- 发布时间:2013/6/15 11:22:00 -- 以下是引用zaianda在2013-6-15 11:20:00的发言:
和这个没关系去不去掉还是只是会整个取消的.
这个ReTURN只是在本事件中当前代码段退出而已
把 return 去掉 |
-- 作者:ifastudy -- 发布时间:2013/6/15 11:28:00 -- 明白,我已经改成在ValidateEdit验证数据了。 |