以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]如何按列内容生成目录树? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=6343) |
||||
-- 作者:ylm -- 发布时间:2010/3/23 20:38:00 -- [求助]如何按列内容生成目录树? [求助]表中类别只有一列(如图1),如何按类别列内容生成图2的目录树? 此主题相关图片如下:b.gif 此主题相关图片如下:a.gif |
||||
-- 作者:程兴刚 -- 发布时间:2010/3/23 22:01:00 -- 如果您把这样一列的数据分成多级类别(多列),会非常简单,否则,很麻烦! [此贴子已经被作者于2010-3-23 22:01:26编辑过]
|
||||
-- 作者:mr725 -- 发布时间:2010/3/23 23:02:00 -- 遍历行,再遍历单元格.split("\\") 后, 用 .Nodes.Add 应该可以完成...... 猜测的~ |
||||
-- 作者:ylm -- 发布时间:2010/3/23 23:15:00 -- 以下是引用程兴刚在2010-3-23 22:01:00的发言:
如果您把这样一列的数据分成多级类别(多列),会非常简单,否则,很麻烦! [此贴子已经被作者于2010-3-23 22:01:26编辑过] 恩,确实是这样。实在不行的话,也只好这样子。 |
||||
-- 作者:ylm -- 发布时间:2010/3/23 23:17:00 -- 以下是引用mr725在2010-3-23 23:02:00的发言:
遍历行,再遍历单元格.split("\\") 后, 用 .Nodes.Add 应该可以完成...... 猜测的~ 不会弄。 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2010/3/24 0:22:00 --
Dim nd As WinForm.TreeNode For Each dr As DataRow In DataTables("表A").Select("","类别") Dim Path As String = dr("类别") Dim Parts() As String = Path.Split("\\") Dim Start As Integer If nd IsNot Nothing Then Do If Path.StartsWith(nd.FullPath) Then Start = nd.Level + 1 nd = nd.Nodes.Add(Parts(Start),Parts(start)) Start = nd.Level + 1 Exit do Else nd = nd.ParentNode If nd Is Nothing Then Exit do End If End If Loop End If If nd Is Nothing Then nd = e.Form.Controls("TreeView1").Nodes.Add(Parts(0),Parts(0)) start = 1 End If For i As Integer = Start To Parts.Length - 1 nd = nd.Nodes.Add(Parts(i),Parts(i)) Next Next [此贴子已经被作者于2010-3-24 1:00:34编辑过]
|
||||
-- 作者:czy -- 发布时间:2010/3/24 0:24:00 -- 先顶再说。 |
||||
-- 作者:mr725 -- 发布时间:2010/3/24 0:39:00 -- 这样不知满足您: Dim tr As WinForm.TreeView = Forms("mls").Controls("TreeView1") Dim nd As WinForm.TreeNode Dim fs as String tr.Nodes.Clear For Each dr as DataRow in datatables("表名").Select("","类别") If dr("类别") <> "" Then nd = Tr.Nodes.Add("Root1",dr("类别").split("\\")(0)) fs = dr("类别").split("-:special:1:-).length for n as integer = 1 to fs-1 nd.Nodes.Add("Sub" & n,dr("类别").split("-:special:1:-)(n)) next End If Next
不如狐爸的强!~ [此贴子已经被作者于2010-3-24 0:59:11编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2010/3/24 1:01:00 -- 第一次传的有问题,已经重新传了 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2010/3/24 9:57:00 -- 大家可能没有意识到,这个例子很有用,我顶一下。 |