TreeView动态生成方法!


    ''' <summary>
    ''' 加载根节点   

    ''' </summary>
    ''' <remarks></remarks>
    Private Sub LoadTreeView()

        Private sql As String          'SQL文  
        Dim ds As DataSet              '记录集

        Dim dt As DataTable
        Dim i As Integer 
        sql = "Select * from USYSFORMS"
        ds = MNSQLHelper.ExecuteDataset(sql)
        dt = ds.Tables(0)
        For i = 0 To dt.Rows.Count - 1
            If dt.Rows(i).Item("FRM_ID").Trim = "0" Then
                Dim tNode As New TreeNode

                tNode.Tag = dt.Rows(i).Item("FRM_ID").Trim
                tNode.Text = dt.Rows(i).Item("FRM_NAME_C").Trim
                'アイコン
                tNode.ImageKey = dt.Rows(i).Item("ICON_NAME").Trim

                tNode.SelectedImageKey = tNode.ImageKey
                'メインノードを追加
                Me.ctrvMenu.Nodes.Add(tNode)

                LoadSubTree(dt, tNode, 0)
            End If
        Next

        ctrvMenu.Nodes(0).Expand()

    End Sub

    ''' <summary>
    ''' 加载子节点   

    ''' </summary>
    ''' <param name="dtTable">記録集</param>
    ''' <param name="tNode">根节点</param>
    ''' <param name="frmId">FRM_ID</param>
    ''' <remarks></remarks>
    Private Sub LoadSubTree(ByVal dtTable As DataTable, ByVal tNode As TreeNode, ByVal frmId As String)
        Dim i As Integer
        For i = 0 To dtTable.Rows.Count - 1
            If dtTable.Rows(i).Item("FRM_ID").Trim <> "0" Then
                If dtTable.Rows(i).Item("ROOT_BUN").Trim <> "1" Then
                    If dtTable.Rows(i).Item("FRM_ID_LAST").Trim = frmId Then
                        Dim sNode As New TreeNode

                        sNode.Tag = dtTable.Rows(i).Item("FRM_ID").Trim
                        sNode.Text = dtTable.Rows(i).Item("FRM_NAME_C").Trim
                        sNode.ImageKey = dtTable.Rows(i).Item("ICON_NAME").Trim
                        sNode.SelectedImageKey = sNode.ImageKey

                        tNode.Nodes.Add(sNode)

                        LoadSubTree(dtTable, sNode, dtTable.Rows(i).Item("FRM_ID").Trim)
                        sNode = Nothing
                    End If
                End If
            End If

        Next

    End Sub

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值