Foxtable(狐表)用户栏目专家坐堂 → [求助]节点显示问题


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

主题:[求助]节点显示问题

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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
[求助]节点显示问题  发帖心情 Post By:2015/6/2 22:52:00 [只看该作者]

老师,
点击左面的目录树的“李四”,为何右面一级显示为“1”,好像是Node的name,可是我没设置,都用的Text;
怎么能正常显示为“管理”
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:管理项目1.rar

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/2 23:03:00 [只看该作者]

 呃,如果表A某行勾选了显示,那么它的父亲肯定也必须勾选显示才对,不然怎么生成树?

 

 你的1.1是第二级树了啊。


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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/6/2 23:11:00 [只看该作者]

怎么写 才能自动勾选一级呢


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/2 23:17:00 [只看该作者]

 或者 可以换一种思路吧。

 

 生成目录树以后,循环每一个节点,然后根据name或text去表a查找第二列的值,然后赋值给节点。


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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/6/2 23:27:00 [只看该作者]

老师,

怎么写,求代码

Dim tr1 As WinForm.TreeView = e.Form.Controls("TreeView1")
Dim tr2 As WinForm.TreeView = e.Form.Controls("TreeView2")
Dim nd1 As WinForm.TreeNode = tr1.SelectedNode
Select Case nd1.Level
    Case 0
        tr2.GenerateTree("表A","第一列","第二列",".")
        tr2.ExpandAll
    Case 1
        For Each dr As DataRow In DataTables("表a").DataRows
            If dr("第三列").Contains(nd1.ParentNode.Text) Then
                dr("显示") = True
            Else
                dr("显示") = False
            End If
        Next
        tr2.GenerateTree("表A","第一列","第二列",".","[显示] =true")
        For Each nd3 As WinForm.TreeNode In tr2.AllNodes
            nd3.Text=e.Node.DataRow("第二列")
        Next
        tr2.ExpandAll
        Vars("Tree") = False
End Select
For Each nd2 As WinForm.TreeNode In tr2.AllNodes
    For Each dr As DataRow In DataTables("表A").DataRows
        If nd2.Text = dr("第一列") And dr("第一列").Contains(nd1.Text) Then
            nd2.Checked = True
        End If
    Next
Next
Vars("Tree") = True

[此贴子已经被作者于2015/6/2 23:33:36编辑过]

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/6/3 8:47:00 [只看该作者]

For Each nd3 As WinForm.TreeNode In tr2.AllNodes
            nd3.Text=nd3.DataRow("第二列")
        Next

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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/6/3 8:47:00 [只看该作者]

红袍老师,

   再求您给看看,到底应该怎么写呀。

[此贴子已经被作者于2015/6/3 15:08:25编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/6/3 15:09:00 [只看该作者]


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/3 15:14:00 [只看该作者]

 

[此贴子已经被作者于2015/6/3 15:19:55编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/3 15:23:00 [只看该作者]

 For Each nd3 As WinForm.TreeNode In tr2.AllNodes
            If nd3.name = nd3.text Then
                Dim fdr As DataRow = DataTables("表A").Find("第一列 = '" & nd3.FullName.Replace("\", ".") & "'")
                If fdr IsNot Nothing Then
                    nd3.Text = fdr("第二列")
                End If
            End If
        Next

 回到顶部
总数 11 1 2 下一页