以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何把外部数据源的多列内容都生成树的根结点?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=48020)

--  作者:wh420
--  发布时间:2014/3/21 13:52:00
--  如何把外部数据源的多列内容都生成树的根结点?
Dim tv As WinForm.TreeView
tv =e.Form.Controls(
"TreeView1")
tv.BuildTree(
"订单", "产品|客户|雇员")

帮助中把产品,客户,雇员三列生成了多级的树,请问如何让这三列都生成只有根结点的树?



--  作者:Bin
--  发布时间:2014/3/21 14:05:00
--  
不是很理解你的意思.
--  作者:wh420
--  发布时间:2014/3/21 14:14:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看
图片点击可在新窗口打开查看此主题相关图片如下:2.jpg
图片点击可在新窗口打开查看
图一是帮助中实现的效果,图2是我想要的效果,都在根结点
--  作者:wh420
--  发布时间:2014/3/21 14:15:00
--  
就是根据多列内容生成只有根结点的目录树
--  作者:lsy
--  发布时间:2014/3/21 14:19:00
--  

例子:


Dim cmd As New SQLCommand
cmd.C
Dim dt As DataTable
cmd.CommandText = "SELECT DISTINCT Year(消费日期) As 年, Month(消费日期) As 月, 品牌, 店铺 From {会员消费表} "
dt = cmd.ExecuteReader()
Dim tv As WinForm.TreeView = e.Form.Controls("TreeView1")
tv.BuildTree(dt, "年|月")
tv.Nodes.Insert("显示所有行",0)
Dim str1 As String = dt.GetComboListString("品牌")
Dim str2 As String = dt.GetComboListString("店铺")
tv.Nodes.Add("品牌")
tv.Nodes.Add("店铺")
For Each s As String In str1.Split("|") 
    tv.Nodes("品牌").Nodes.Add(s)
Next
For Each s As String In str2.Split("|")
    tv.Nodes("店铺").Nodes.Add(s)
Next


--  作者:wh420
--  发布时间:2014/3/21 14:33:00
--  
\'生成目录树
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.C
cmd.CommandText = "SELECT DISTINCT YuanLan1,Mubiaolan1 From {Translators}"
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt,"YuanLan1")
trv.Nodes.Insert("加载所有数据",0)
Dim str1 As String = dt.GetComboListString("Mubiaolan1") 
trv.Nodes.Add("Mubiaolan1") 
For Each s As String In str1.Split("|") 
    trv.Nodes("Mubiaolan1").Nodes.Add(s)
Next

按您给的代码我试了一下,实现效果如下:

图片点击可在新窗口打开查看此主题相关图片如下:3.jpg
图片点击可在新窗口打开查看
而我想要的效果是:

图片点击可在新窗口打开查看此主题相关图片如下:4.jpg
图片点击可在新窗口打开查看




--  作者:wh420
--  发布时间:2014/3/21 15:00:00
--  
自己顶一下,高手帮忙啊
--  作者:Bin
--  发布时间:2014/3/21 15:03:00
--  
上例子.
--  作者:lsy
--  发布时间:2014/3/21 15:04:00
--  
灵活运用,条件不是自己设的嘛,想生成啥样就啥样。
--  作者:lsy
--  发布时间:2014/3/21 15:06:00
--  
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.C
cmd.CommandText = "SELECT DISTINCT YuanLan1,Mubiaolan1 From {Translators}"
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt,"YuanLan1")
trv.Nodes.Insert("加载所有数据",0)
Dim str1 As String = dt.GetComboListString("Mubiaolan1") 
For Each s As String In str1.Split("|") 
    trv.Nodes.Add(s)
Next