Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
看了,这样好像不能实现哦。
我的表结构已经设计好了,在不更改表结构的前提想尽量通过代码来实现
不改也行,只需将层次列改为整数型,看这个例子:
下载信息 [文件大小: 下载次数: ] | |
![]() |
不过我还是建议你按照帮助来,因为对普通用户来说,下面的代码有点复杂,且严格要求数据输入规范:
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
Dim nod As WinForm.TreeNode
Dim dr As DataRow
Dim drs As List(of DataRow) = DataTables("表A").Select("部门名称 Is Not Null","部门名称")
For i As Integer = 0 To drs.Count - 1
dr = drs(i)
If dr("层次") = 0 Then
nod = trv.Nodes.Add(dr("部门名称"))
Else
Do
If nod.Level = dr("层次")
nod = nod.ParentNode.Nodes.Add(dr("部门名称"))
Exit Do
ElseIf nod.Level = dr("层次") - 1
nod = nod.Nodes.Add(dr("部门名称"))
Exit Do
Else
nod = nod.ParentNode
End If
Loop
End If
Next
先谢谢狐狸爸爸和BLACK ZHU了
正如狐狸爸爸所说代码很难懂哦,
If nod.Level = dr("层次") 既然是做判断,哪nod.level的值是怎么确定的呢?
这个我知道,可能是我没说清楚,我的意思是程序是如何知道当前是哪一个nod呢?