'---在各表名下生成目录树节点 e.Sender.StopRedraw Dim pnd As WinForm.TreeNode = e.Node If e.Node.level = 1 Then '如果是表名节点 e.Node.Nodes.Clear '清空原有节点 Dim tbName As String = e.Node.Name Dim dr As DataRow = DataTables("表B").Find("表名 = '" & tbName & "'") If dr IsNot Nothing Then Dim Cols As String = dr("目录树列") Dim Cols_sort As String = Cols.replace("|",",") Dim nds As new List(Of WinForm.TreeNode) For i As Integer = 0 To Cols.Split("|").Length nds.Add(e.Node) Next For Each arys As String() In DataTables(tbName).GetValues(Cols, "", Cols_sort) Dim flag As Boolean = False For i As Integer = 0 To arys.Length - 1 If nds(i+1).Name <> arys(i) OrElse flag Then flag = True nds(i+1) = nds(i).Nodes.Add(arys(i)) End If Next Next e.Node.Expand End If End If e.Sender.ResumeRedraw
|