Foxtable(狐表)用户栏目专家坐堂 → [求助]关于目录树的根节点


  共有4681人关注过本帖树形打印复制链接

主题:[求助]关于目录树的根节点

帅哥哟,离线,有人找我吗?
lsy
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/3/18 16:29:00 [显示全部帖子]

Dim str As String = DataTables("订单").GetComboListString("产品") & "|" & DataTables("订单").GetComboListString("客户")
Dim tv As WinForm.TreeView = e.Form.Controls("TreeView1")
For Each s As String In str.Split("|")
    tv.Nodes.Add(s)
Next

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/3/18 17:04: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 str As String = dt.GetComboListString("品牌") & "|" & dt.GetComboListString("店铺")
For Each s As String In str.Split("|")
    tv.Nodes.Add(s)
Next

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/3/18 17:20:00 [显示全部帖子]

以下是引用czy66ds在2014-3-18 17:14:00的发言:
谢谢BIN 和LSY.
可是这样的话,从品牌列和地区列取出的不重复的内容都成主节点了。我是只想把“品牌”和“地区”作为主节点。
如何在BuildTree上做文章?

表述不精确。

直接讲,增加哪几个根节点,就行了。


 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/3/18 17:26:00 [显示全部帖子]

我猜楼主的意思是这样:

已经有“年”这个根节点了,“月”作为“年”的子节点。

还想增加“品牌”、“店铺”之类的根节点,再以这两个列的各行内容,作为相应的子节点。

 

最好把例子发上来,至少把表导出来,上传。


 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/3/18 17:32: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

[此贴子已经被作者于2014-3-18 17:32:45编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/3/21 15:30:00 [显示全部帖子]

源语种和目标语种有重复。

例子发上来,深加工。


 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/3/21 15:47: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 str As String = dt.GetComboListString("YuanLan1")
Dim str1 As String = dt.GetComboListString("Mubiaolan1")
For Each s As String In str1.Split("|")
    If str.Contains(s) = False Then
        trv.Nodes.Add(s)
    End If
Next

 回到顶部