以文本方式查看主题

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

--  作者:syczmg
--  发布时间:2014/2/8 23:25:00
--  [求助]

在项目属性MainTableChanged建立了基于\'xm\'表的动态目录树,在\'pm’表中好用。但是,\'xm\'表和\'pm\'表建立关联后,在\'xm.pm\'表(和父表在同一窗口)中不可用。

以上问题,急于求助,多谢解答!语句如下:

If MainTable.Name = "pm" Then
    Dim mls1 As New DropTreeBuilder
    mls1.SourceTable = DataTables("xm") \'指定目录树表
    mls1.TreeCols = "nd|xmbh" \'指定用于生成目录树的列
    mls1.SourceCols = "nd|xmbh|jhxd|jhbh|glc|dw|cgr|pmsl|xmbh" \'指定数据来源列
    mls1.ReceiveCols = "nd|xmbh|jhxd|jhbh|glc|dw|cgr|pmsl|pmbh" \'指定数据接收列
    Tables("pm").Cols("pmbh").DropTree = mls1.Build()

把pm改为xm.pm也不可用!

[此贴子已经被作者于2014-2-8 23:36:52编辑过]

--  作者:有点甜
--  发布时间:2014/2/9 21:13:00
--  
 呃,你选择了xm.pm的时候,只会pm的触发maintablechanged事件的。

 你可以在里面判断一下currenttable.name的值,然后设置成xm.pm,代码类似

If MainTable.Name = "pm" Then
    Dim mls1 As New DropTreeBuilder
    mls1.SourceTable = DataTables("xm") \'指定目录树表
    mls1.TreeCols = "nd|xmbh" \'指定用于生成目录树的列
    mls1.SourceCols = "nd|xmbh|jhxd|jhbh|glc|dw|cgr|pmsl|xmbh" \'指定数据来源列
    mls1.ReceiveCols = "nd|xmbh|jhxd|jhbh|glc|dw|cgr|pmsl|pmbh" \'指定数据接收列
    Tables(CurrentTable.Name).Cols("pmbh").DropTree = mls1.Build()