以文本方式查看主题

-  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=32254)

--  作者:zhuying0718
--  发布时间:2013/4/28 10:10:00
--  [求助]我想实现下面的这个功能,求老师帮帮忙吧,窗口中文本框绑定当前表的父表的某一个列

假设有表A和表B两张表,表A有A1和C两列,表B有B1和C两列,表A和表B通过C列相关联,表A做为父表。

在一窗口中,有文本框Textbox1,当表B切换 行 时,文本框Textbox1的内容显示的是表B的父表 表A 的关联行 A1 列的内容

求老师帮帮忙,看能不能实现这个功能


--  作者:Bin
--  发布时间:2013/4/28 10:15:00
--  
e.Form.controls("TextBox1").Text=datatables("表A").Find("C列=\'" & tables("表B").current("C列") & "\'")("A1")
--  作者:XYT
--  发布时间:2013/4/28 10:15:00
--  
可以
--  作者:狐狸爸爸
--  发布时间:2013/4/28 11:27:00
--  

如果你是双向关联的话,可以直接将这个控件绑定到字段:

 

表B.表A.字段名

 

如果不是,就按bin的代码做,代码写在表B的CurrentChanged事件:

 

If Forms("窗口名").Opened Thn

   Dim dr As DataRow = datatables("表A").Find("C列=\'" & e.Table.current("C列") & "\'")

   If dr IsNot Nothing Then

           Forms("窗口名").controls("TextBox1").Value = dr("A1")

   end if

End if