以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助] 身份证重复值输入判断 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=57433) |
-- 作者:mxm121 -- 发布时间:2014/9/24 20:03:00 -- [求助] 身份证重复值输入判断 按照手册 在表的datacolchanging里加入如下代码 If e.DataCol.Name = "身份证号码" Then Dim dr As DataRow dr = e.DataTable.Find("身份证号码 = \'" & e.NewValue & "\'") If dr IsNot Nothing Then MessageBox.Show("身份证号码重复,请检查确认后重新输入!") e.Cancel = True End If End If 直接在表格里输入重复身份证号码出现重复提示,我通过窗体输入,会出现两次重复信息提示,请问这是为啥 [此贴子已经被作者于2014-9-24 20:11:38编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/9/24 20:14:00 -- 测试了一下,这个没办法避免。
变通一下处理,表的控制写在ValidateEdit事件;窗口控件的检测,写在控件的Validating事件 |
-- 作者:mxm121 -- 发布时间:2014/9/24 20:23:00 -- 好的,我试试吧 |
-- 作者:mxm121 -- 发布时间:2014/9/24 20:38:00 -- 解决了 在控件validating中加入如下代码解决 谢谢版主 Dim dr As DataRow dr = DataTables("员工资料").sqlFind("身份证号码 = \'" & e.Sender.Text & "\'") If dr IsNot Nothing Then e.Sender.Text = Nothing MessageBox.Show("身份证号码重复,请检查确认后重新输入!") e.Form.Controls("TextBox3").Select() End If |