Foxtable(狐表)用户栏目专家坐堂 → 我在表中的列属性中设置了禁止重复输入,为什么我窗体中仍然可以输入重复的内容?


  共有7487人关注过本帖树形打印复制链接

主题:我在表中的列属性中设置了禁止重复输入,为什么我窗体中仍然可以输入重复的内容?

帅哥哟,离线,有人找我吗?
lgcfoxtable
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:57 积分:562 威望:0 精华:0 注册:2011/9/4 14:58:00
我在表中的列属性中设置了禁止重复输入,为什么我窗体中仍然可以输入重复的内容?  发帖心情 Post By:2011/10/5 17:31:00 [显示全部帖子]

如标题,该怎么解决?

 回到顶部
帅哥哟,离线,有人找我吗?
lgcfoxtable
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:57 积分:562 威望:0 精华:0 注册:2011/9/4 14:58:00
  发帖心情 Post By:2011/10/5 18:57: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

 

试了也不管用。


 回到顶部
帅哥哟,离线,有人找我吗?
lgcfoxtable
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:57 积分:562 威望:0 精华:0 注册:2011/9/4 14:58:00
  发帖心情 Post By:2011/10/5 19:02:00 [显示全部帖子]

好了,要在表属性当中设。

 回到顶部