以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关于删除的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=86815) |
-- 作者:hopestarxia -- 发布时间:2016/6/27 8:53:00 -- 关于删除的问题 有两个表,一个部门表,一个人员表, 人员表中要选择人员所属的部门,(引用部门表的资料) 现在维护部门资料,删除部门,想在删除部门的时候能够检查该部门是否被人员表引用,如果被引用,此提示已被引用,不允许删除的提示。未被引用过的资料才能删除掉。 请问此处怎么实现。
|
-- 作者:Hyphen -- 发布时间:2016/6/27 8:56:00 -- 参考http://www.foxtable.com/help/topics/1451.htm 用find进行查找,如果查找到说明已被引用,代码写到DataRowDeleting事件
|
-- 作者:hopestarxia -- 发布时间:2016/6/27 16:23:00 -- 谢谢,根据你的提示,使用以下语句完成了工作; Dim cm As WinForm.ComboBox = e.Form.Controls("ComboBox2") Dim dr As DataRow = cm.SelectedItem If dr IsNot Nothing Then e.Form.Controls("textbox4").Value = dr("dptid") End If 不过现在还有一点问题,如果在ComboBox2中先选择了一个值,后面发现如果该列改为不选择时,那么原来由于 第一次点选择时出来 的在textbox4的值,不跟着上面的取消变为空值而同样变为空值。 请指导一下。
|
-- 作者:大红袍 -- 发布时间:2016/6/27 16:26:00 -- 试试
Dim cm As WinForm.ComboBox = e.Form.Controls("ComboBox2")
Dim dr As DataRow = cm.SelectedItem
If dr IsNot Nothing Then
e.Form.Controls("textbox4").Value = dr("dptid")
Else
e.Form.Controls("textbox4").Value = Nothing
End If |
-- 作者:hopestarxia -- 发布时间:2016/6/27 16:38:00 -- 谢谢,前面试过这样的语句,不管用。textbox4不跟着变为空。 |
-- 作者:hopestarxia -- 发布时间:2016/6/27 16:50:00 -- 看着理解这个语句应该是可以的,但是将ComboBox2的内容清除后对应的textbox4就是不变化 |
-- 作者:大红袍 -- 发布时间:2016/6/27 18:14:00 -- TextChanged事件
Dim cm As WinForm.ComboBox = e.Sender |