以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]目录树缩进  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=194996)

--  作者:foxbobo1976
--  发布时间:2025/2/14 14:28:00
--  [求助]目录树缩进
Dim cmd1 As New S
Dim dt1 As DataTable
cmd1.CommandText = "S   ELECT DISTINCT 科目代码 From {主表}"
dt1 = cmd1.ExecuteReader()
Dim tv As WinForm.TreeView = e.Form.Controls("TreeView1")
tv.BuildTree(dt1, "科目性质|科目代码|科目名称","","科目代码")
tv.StopRedraw
For Each nd As WinForm.TreeNode In tv.AllNodes
    Select Case nd.Level
        Case 0
            nd.Text = nd.Text
        Case 1
            nd.Text = nd.text & " " &  nd.DataRow("科目名称")
            If nd.DataRow("科目级别") = 2 Then
                nd.MoveRight()
            End If
            If nd.DataRow("科目级别") = 3 Then
                nd.MoveRight()
                nd.MoveRight()
            End If
            If nd.DataRow("科目级别") = 4 Then
                nd.MoveRight()
                nd.MoveRight()
                nd.MoveRight()
            End If
            If nd.DataRow("科目级别") = 5 Then
                nd.MoveRight()
                nd.MoveRight()
                nd.MoveRight()
                nd.MoveRight()
            End If
        Case 2
            nd.Delete()
        Case 3
            nd.Delete()
        Case 4
            nd.Delete()
        Case 5
            nd.Delete()
        Case 6
            nd.Delete()
    End Select
Next
tv.ResumeRedraw
以上是目录树代码,因为2.3.4.5节点是在1节点通过缩进生成的,目录树生成后所有节点都是展开的,用Expand代码只展开一级科目不受控拆制,求只展开一级科目的 代码
[此贴子已经被作者于2025/2/14 14:28:50编辑过]

--  作者:foxbobo1976
--  发布时间:2025/2/14 14:52:00
--  
已解决