Foxtable(狐表)用户栏目专家坐堂 → 目录树不能自动更新


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

主题:目录树不能自动更新

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


加好友 发短信
等级:童狐 帖子:250 积分:1813 威望:0 精华:0 注册:2012/6/28 13:53:00
目录树不能自动更新  发帖心情 Post By:2017/12/15 23:29:00 [只看该作者]

帮助内提到:目录树自动更新,如果需要根据其它列已经输入的内容来生成列表项目或目录树,那么就只能将代码放在表事件PrepareEdit中了。
我做了一个,还是不行,不能自动更新


'目录树自动更新

If MainTable.Name = "单价明细" Then

    Dim tb As New DropTreeBuilder

    tb.SourceTable = DataTables("单价列表") '指定目录树表

    tb.TreeCols = "工料一类|工料二类|工料名称" '指定用于生成目录树的列

    tb.SourceCols = "工料一类|工料二类|工料名称|工料单位|工料单价|单价列表ID" '指定数据来源列

    tb.ReceiveCols = "工料一类|工料二类|工料名称|工料单位|工料单价|单价列表ID" '指定数据接收列

    Tables("单价明细").Cols("工料一类").DropTree = tb.Build()

End If


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105925 积分:538688 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/12/16 8:40:00 [只看该作者]

代码放到单价明细AfterSelChange事件

Dim cl As Col = e.Table.Cols(e.NewRange.ColSel)
If cl.Name = "工料一类" Then
    Dim tb As New DropTreeBuilder
    tb.SourceTable = DataTables("单价列表") '指定目录树表
    tb.TreeCols = "工料一类|工料二类|工料名称" '指定用于生成目录树的列
    tb.SourceCols = "工料一类|工料二类|工料名称|工料单位|工料单价|单价列表ID" '指定数据来源列
    tb.ReceiveCols = "工料一类|工料二类|工料名称|工料单位|工料单价|单价列表ID" '指定数据接收列
    e.Table.Cols("工料一类").DropTree = tb.Build()
End If

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


加好友 发短信
等级:童狐 帖子:250 积分:1813 威望:0 精华:0 注册:2012/6/28 13:53:00
  发帖心情 Post By:2017/12/16 13:16:00 [只看该作者]

如果我希望点击目录树列,自动找到已录入数据的目录树末级,好不好修改上面代码来实现?

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105925 积分:538688 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/12/16 14:41:00 [只看该作者]

这种目录树没有办法做其它控制。

 回到顶部