循环添加TreeView

Public Sub BindCategoryTreeVew(ByVal treeView As TreeView, ByVal isExpanded As Boolean)
        '将获取的数据转换为 一个DataTable
        sortid = Request.QueryString("sortid")
        Dim i As Integer
        Dim dt As DataTable = edu.GetEduSortListByBigID(sortid).Tables(0)
        treeView.Nodes.Clear()
        '清空 树的所有节点
        '获取与排序顺序中的筛选器以及指定的状态相匹配的所有System.Data.DataRow 数组
        '创建跟节点

        For i = 0 To dt.Rows.Count - 1
            Dim rootNode As New TreeNode()
            '设置根节点的属性
            rootNode.Text = dt.Rows(i)("classname").ToString()
            '设置根节点的值
            rootNode.Value = dt.Rows(i)("classid").ToString()      
            rootNode.Expanded = isExpanded
            rootNode.Selected = False
            '添加跟节点
            Me.treeView1.Nodes.Add(rootNode)
            rootNode.SelectAction = TreeNodeSelectAction.None
            CreateChildNode(rootNode, dt, isExpanded)
        Next
        treeView.SelectedNodeStyle.ForeColor = Drawing.Color.Red

    End Sub


    Private Sub CreateChildNode(ByVal parentNode As TreeNode, ByVal dt As DataTable, ByVal isExpanded As Boolean, ByVal num As Integer)
        '选择数据,添加排序表达市
        Dim rowList As DataSet = edu.GetEduSortListByBigID(parentNode.Value)
        Dim q As Integer

        For q = 0 To rowList.Tables(0).Rows.Count - 1
            '创建一个新的节点了
            Dim node As New TreeNode()
            Dim str As String = rowList.Tables(0).Rows(q)("classid").ToString()
        
            node.Text = rowList.Tables(0).Rows(q)("classname").ToString()
            node.Value = rowList.Tables(0).Rows(q)("classid").ToString()
            node.Expanded = isExpanded
            node.Target = "frmlist"
            node.NavigateUrl = "EduTestList.aspx?sortid=" & rowList.Tables(0).Rows(q)("classid").ToString() & ""
            parentNode.ChildNodes.Add(node)
            '递归调用,创建其他节点
            CreateChildNode(node, dt, isExpanded)

        Next
    End Sub

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值