以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]还是树型目录不会弄! (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=4546) |
||||
-- 作者:roy78 -- 发布时间:2009/10/10 10:36:00 -- [求助]还是树型目录不会弄! 此主题相关图片如下:1.jpg 以上是产品类型表 此主题相关图片如下:2.jpg 目录树生成三级、四级。。。。。N级代码不会写。。
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2009/10/10 10:45:00 -- 自己编码生成,原理就是: 1、排序 2、判断"."的个数,没有,就增加根节点,和上级相同,就在同级增加,比上级多1,就增加子节点。 建议规范格式: 01 02.01 08.08.1 02.12.34 你看看TreeView的说明,看看如何增加节点 [此贴子已经被作者于2009-10-10 10:45:57编辑过]
|
||||
-- 作者:roy78 -- 发布时间:2009/10/10 11:29:00 -- 帮忙写个我学习下吧,弄了半天还不得其法 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2009/10/10 11:31:00 -- 现在没有时间,以后有空我帮你做一个 |
||||
-- 作者:roy78 -- 发布时间:2009/10/10 11:38:00 -- 。。。有时间的朋友帮个忙弄下吧学习学习 |
||||
-- 作者:reachtone -- 发布时间:2009/10/10 12:08:00 -- 这并不复杂啊,是根据fCode列来显示的吧,根据包含的点数分级添加就行了。 我尝试帮你写一个看看。 |
||||
-- 作者:roy78 -- 发布时间:2009/10/10 12:19:00 -- 太好了,呵呵,学习下,现在一下子理不清思路,太多东西要做了 |
||||
-- 作者:reachtone -- 发布时间:2009/10/10 12:31:00 -- 把下面的代码复制到afterload里就行了,级别可根据你的需要随便加,无非多几个Case而已: Dim tr As WinForm.TreeView = e.Form.Controls("TreeView1") Dim nd0,nd1,nd2 As WinForm.TreeNode Dim fs as String() tables("产品类型基础资料1_Table1").fill("select * from tProductType","zmsteel",false) tables("产品类型基础资料1_Table1").Sort = "fCode" For Each dr as Row in Tables("产品类型基础资料1_Table1").Rows If dr("fCode") <> "" Then fs = dr("fCode").Split(".") Select Case fs.Length Case 1 nd0 = tr.Nodes.Add(Rand.NextString(10),dr("fCode") & " " & dr("fname")) Case 2 nd1 = nd0.Nodes.Add(Rand.NextString(10),dr("fCode") & " " & dr("fname")) Case 3 nd2 = nd1.Nodes.Add(Rand.NextString(10),dr("fCode") & " " & dr("fname")) End Select End If Next 效果如下: 此主题相关图片如下:1.jpg [此贴子已经被作者于2009-10-10 14:25:49编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2009/10/10 12:44:00 -- 佩服,这段代码相当厉害. |
||||
-- 作者:roy78 -- 发布时间:2009/10/10 12:54:00 -- 学习中~~~ |