Foxtable(狐表)用户栏目专家坐堂 → 目录树的展开和折叠


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

主题:目录树的展开和折叠

美女呀,离线,留言给我吧!
Phoebe菲比
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:158 积分:998 威望:0 精华:0 注册:2021/8/17 15:39:00
目录树的展开和折叠  发帖心情 Post By:2022/4/18 11:07:00 [只看该作者]

我想表达:在窗口打开后,目录树能自动展开某个节点,目前只显示的根节点。
我的代码:窗口--->AfterLoad事件
Dim tv As WinForm.TreeView = e.Form.Controls("TreeView1")
tv.GenerateTree("GB2013土建","级码","清单名称", ".")

tv.StopRedraw '停止绘制目录树
For Each nd As WinForm.TreeNode In tv.AllNodes '遍历所有节点
    If nd.Level = 3 Then '如果是二级节点
        nd.Text = nd.DataRow("清单编码") & " " & nd.text
    End If
Next
tv.ResumeRedraw '恢复绘制目录树

tv.Nodes(1).Expand()

对于node和treenode这块的代码,我看了帮助文档还是很模糊。以后是否能增加更多例子以供学习?
图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20220418110357.png
图片点击可在新窗口打开查看

 回到顶部
美女呀,离线,留言给我吧!
Phoebe菲比
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:158 积分:998 威望:0 精华:0 注册:2021/8/17 15:39:00
  发帖心情 Post By:2022/4/18 11:31:00 [只看该作者]

另外,我设置了折叠按钮,希望点击按钮后,可以直接折叠到第一层节点。
同样会弹出这个对话框。
这是我的代码:
e.Form.Controls("TreeView1").Nodes(1).Collapse()

 回到顶部
美女呀,离线,留言给我吧!
Phoebe菲比
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:158 积分:998 威望:0 精华:0 注册:2021/8/17 15:39:00
  发帖心情 Post By:2022/4/18 11:45:00 [只看该作者]

目前想到了一个比较曲折的办法,先整体关闭,再打开一层节点。
e.Form.Controls("TreeView1").Nodes(0).CollapseAll()
e.Form.Controls("TreeView1").Nodes(0).Expand()

是否有更简便的办法?

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


加好友 发短信
等级:超级版主 帖子:105958 积分:538865 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/4/18 12:07:00 [只看该作者]

tv.Nodes(1)指第二个根节点,说明目录树只有一个根节点

如果展开过,只能是3楼的用法。

 回到顶部