以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  MessageBox 提示问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=97008)

--  作者:蓝蚂蚁
--  发布时间:2017/3/3 22:08:00
--  MessageBox 提示问题
老师,麻烦帮看看如下(DataColchanged)代码:
If e.DataCol.Name = "产品编号" Then
    Dim dr As DataRow 
    Dim Result1 As DialogResult
    dr = e.DataTable.Find("产品编号 = \'" & e.NewValue & "\'")
    If dr IsNot Nothing Then
       Result1=MessageBox.Show("产品编号重复! 无法录入!", "提示", MessageBoxButtons.Ok, MessageBoxIcon.Question)
       If Result1 = DialogResult.Ok Then
            e.DataRow("产品编号")= Nothing
       End If
    End If
End If

描述:目的是不能让产品编码重复,如果重复则提示产品编号重复! 无法录入!,同时清空单元格的内容。
代码问题:输入的产品编码没有重复,但它也提示重复了
请问代码哪里出现了错误?

[此贴子已经被作者于2017/3/3 22:09:31编辑过]

--  作者:有点蓝
--  发布时间:2017/3/3 22:18:00
--  
代码放到DataColchanging事件

If e.DataCol.Name = "产品编号" Then
    Dim dr As DataRow = e.DataTable.Find("产品编号 = \'" & e.NewValue & "\'")
    If dr IsNot Nothing Then
        MessageBox.Show("产品编号重复! 无法录入!", "提示", MessageBoxButtons.Ok, MessageBoxIcon.Question)
        e.Cancel = True
    End If
End If

--  作者:蓝蚂蚁
--  发布时间:2017/3/3 22:21:00
--  
谢谢 按照你的指点完美解决。