Foxtable(狐表)用户栏目专家坐堂 → 动态生成目录树时,如何更改节点标题


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

主题:动态生成目录树时,如何更改节点标题

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


加好友 发短信
等级:幼狐 帖子:198 积分:1448 威望:0 精华:0 注册:2011/8/23 17:38:00
动态生成目录树时,如何更改节点标题  发帖心情 Post By:2012/11/14 5:09:00 [显示全部帖子]

动态生成目录树时,如休更改节点标题,如图:
图片点击可在新窗口打开查看此主题相关图片如下:目录树结点显示标题-20121114.jpg
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:目录树节点标题显示问题.rar


[此贴子已经被作者于2012-11-14 5:12:42编辑过]

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


加好友 发短信
等级:幼狐 帖子:198 积分:1448 威望:0 精华:0 注册:2011/8/23 17:38:00
  发帖心情 Post By:2012/11/14 9:43:00 [显示全部帖子]

参考资料lin_hailun与sgs所提示方法在:ComboBox1 的SelectedIndexChanged事件中加入:
Dim cmd As New SQLCommand
cmd.Connection Name = "JRRJ"
Dim dt As DataTable
cmd.CommandText = "Select a.客户id,a.销售单号,b.客户名称 From {销售订单} a,客户资料 b where a.客户id = b.客户id and a.订单日期 = '" & d1 & "' "
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.Nodes.Add("加载所有数据",0)
For Each dr As DataRow In dt.DataRows
    Dim tnd As WinForm.TreeNode = trv.Nodes.Add(dr("客户id"),dr("客户id") & dr("客户名称"))
    For Each trvstr As String In dt.GetUniqueValues("客户id = '"& tnd.name &"'","销售单号")
        tnd.Nodes.Add(trvstr,trvstr)
    Next
图片点击可在新窗口打开查看此主题相关图片如下:目录树结点显示标题-20121114-02.jpg
图片点击可在新窗口打开查看

Next
在有重复记录,如下图:


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


加好友 发短信
等级:幼狐 帖子:198 积分:1448 威望:0 精华:0 注册:2011/8/23 17:38:00
  发帖心情 Post By:2012/11/14 9:51:00 [显示全部帖子]

根据狐爸方法:

For Each nd AS WinForm.TreeNode In Trv.AllNodes

    If  nd.DataRow IsNot Nothing Then

        if nd.AllNodes.Count = 0 then

          nd.Text = nd.Datarow("客户ID") & nd.Datarow("客户名称")

       end if 

    End If

Next

如下图:



图片点击可在新窗口打开查看此主题相关图片如下:目录树结点显示标题-20121114-03.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2012-11-14 9:51:41编辑过]

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


加好友 发短信
等级:幼狐 帖子:198 积分:1448 威望:0 精华:0 注册:2011/8/23 17:38:00
  发帖心情 Post By:2012/11/14 10:00:00 [显示全部帖子]

5楼处理 方法中加入清除原先的节点后,客户还是那样重复的

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


加好友 发短信
等级:幼狐 帖子:198 积分:1448 威望:0 精华:0 注册:2011/8/23 17:38:00
  发帖心情 Post By:2012/11/14 10:06:00 [显示全部帖子]

http://www.foxtable.com/help/topics/0888.htm


有如下处理方法,这个方法在这里在怎样用


在窗口中插入一个、一个按钮,将按钮的Click事件代码设为:

Dim tr As WinForm.TreeView
Dim
 nd As WinForm.TreeNode
tr = Forms(
"窗口1").Controls("TreeView1")
nd = Tr.Nodes.Add(
"Root1","根节点一")
nd.Nodes.Add(
"Sub1","子节点一")
nd.Nodes.Add(
"Sub2","子节点二")
nd = Tr.Nodes.Add(
"Root2","根节点二")
nd.Nodes.Add(
"Sub3","子节点三")
nd.Nodes.Add(
"Sub4","子节点四")

运行时单击按钮,会生成


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


加好友 发短信
等级:幼狐 帖子:198 积分:1448 威望:0 精华:0 注册:2011/8/23 17:38:00
  发帖心情 Post By:2012/11/14 10:12:00 [显示全部帖子]

楼上的昨晚看了,真是不好懂,再看看

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


加好友 发短信
等级:幼狐 帖子:198 积分:1448 威望:0 精华:0 注册:2011/8/23 17:38:00
  发帖心情 Post By:2012/11/14 10:34:00 [显示全部帖子]

根据狐爸方法,第一个客户的名称没能显示出,点目录树筛选记录也正常:

For Each nd AS WinForm.TreeNode In Trv.AllNodes

    If  nd.DataRow IsNot Nothing Then

        if nd.AllNodes.Count = 1 then

          nd.Text = nd.Datarow("客户ID") & nd.Datarow("客户名称")

       end if 

    End If

Next

如下图:



图片点击可在新窗口打开查看此主题相关图片如下:目录树结点显示标题-20121114-03.jpg
图片点击可在新窗口打开查看


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


加好友 发短信
等级:幼狐 帖子:198 积分:1448 威望:0 精华:0 注册:2011/8/23 17:38:00
  发帖心情 Post By:2012/11/14 11:13:00 [显示全部帖子]

帅哥,在线噢!你的方法可以啊,想在前面去了,要加事先判断
狐爸的方法我再看看

 回到顶部