如何选中treeview中的一个节点,该节点的子结点,包括子结点的子结点也同时选中?

解决方案 »

  1.   

    就像某些安装程序,选择自定义安装项目,选中一个父节点,其下的子节点也一并选中。
    我是想做一个数据库搜索功能,用Treeview列出数据库中的分类信息,通过Checkbox选择要显示的内容。]
      

  2.   

    你应该安装过OFFICE吧,你可以在节点的点击事件中加一个选择菜单,设有全部选中的选项,通过在这个选项的代码来选中所有节点
    参考office的自定义安装方式吧
      

  3.   

    Private Sub ltvClient_NodeCheck(ByVal Node As MSComctlLib.Node)
        Dim obj                     As Node
        Dim k()                     As Integer
        Dim iCount                  As Integer
        Dim temp                    As String
        Dim i, j                    As Integer
        
        temp = Node.Key
        j = 1
        For Each obj In ltvClient.Nodes
            If Not (obj.Parent Is Nothing) Then
                If obj.Parent.Key = temp Then
                    ReDim Preserve k(iCount)
                    k(iCount) = j
                    iCount = iCount + 1
                End If
            End If
            j = j + 1
        Next obj
            
        For i = 0 To iCount - 1
            If Node.Checked = False Then
                ltvClient.Nodes(Val(k(i))).Checked = False
            Else
                ltvClient.Nodes(Val(k(i))).Checked = True
            End If
        NextEnd Sub