以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  代码纠正  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=68495)

--  作者:wangyinming
--  发布时间:2015/5/19 11:13:00
--  代码纠正
写了一以下代码。但是会弹出2次对话框,请高手确认一下!
第一次出现后,单击确定后,
第2次还会出现,再次单击确定后,就好了。

If e.DataCol.name="管理号码1" Then
    If e.newValue>e.DataRow("管理号码2") Then
        MessageBox.Show("管理号码1输入错误,请确认!", "提示", MessageBoxButtons.ok)
e.cancel= Then
    End If
End If

--  作者:Bin
--  发布时间:2015/5/19 11:14:00
--  
除非你后面还有代码.或者其他事件有代码
--  作者:blsu33
--  发布时间:2015/5/19 11:15:00
--  
e.cancel= True
--  作者:wangyinming
--  发布时间:2015/5/19 11:19:00
--  
确认过了,没有同样的代码了。

e.cancel= True
也试过了,还是调2次窗口

If e.DataCol.name="管理号码1" Then
    If e.newValue>e.DataRow("管理号码2") Then
       
        e.cancel=True
    End If
End If

也没有问题,就是不会弹对话框
[此贴子已经被作者于2015/5/19 11:20:36编辑过]

--  作者:Bin
--  发布时间:2015/5/19 11:21:00
--  
上例子
--  作者:blsu33
--  发布时间:2015/5/19 11:27:00
--  
是不是放在的表事件的位置不对,放在位置是哪呢。
--  作者:wangyinming
--  发布时间:2015/5/19 11:28:00
--  
直接在表中输入时只会调1次。但是在窗口输入时就会有2回,不解啊



--  作者:Bin
--  发布时间:2015/5/19 11:29:00
--  
上例子
--  作者:wangyinming
--  发布时间:2015/5/19 11:29:00
--  

DataColChanging 事件中


--  作者:blsu33
--  发布时间:2015/5/19 11:31:00
--  
窗口中,也有设置才会这样;
或是窗口的设置,重新出现再次判断上面的命令。