Foxtable(狐表)用户栏目专家坐堂 → [求助]多列目录树代码修改


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

主题:[求助]多列目录树代码修改

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


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/22 21:20:00 [显示全部帖子]

需要手工生成目录树,如:

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.Nodes.Add("全部")
Dim n As WinForm.TreeNode = trv.Nodes.Add("性别")
n.Nodes.Add("男")
n.Nodes.Add("女")

n = trv.Nodes.Add("民族")
For Each s As String In DataTables("员工信息").GetValues("民族")
    n.Nodes.Add(s)
Next

至于点击事件就比较麻烦了
需要判断每一个点击的节点属于那个分类的,然后再根据节点名称做筛选

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


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/23 10:35:00 [显示全部帖子]

n = trv.Nodes.Add("岗类部门")
For Each s1 As String In DataTables("员工信息").GetValues("岗位类别","","岗类编码")
    Dim n1 As WinForm.TreeNode =  n.Nodes.Add(s1)
    For Each s2 As String In DataTables("员工信息").GetValues("工作部门","岗位类别='" & s1 & "'","部门编码")
        n1.Nodes.Add(s2)
    Next
Next

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


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/23 11:17:00 [显示全部帖子]

以后麻烦代码直接贴上来即可,不要发那种带行号的,别人改也麻烦。

tbl.Filter = "性别 Like '%" & ary(0) & "%'"


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


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/23 17:22:00 [显示全部帖子]

Dim Filter As String = ""
Dim dr As DataRow = e.Node.DataRow
Dim tbl As Table = Tables("员工信息")
Dim ary = e.node.fullpath.split("\")
If e.node.level > 0 '第二层节点开始
    Select Case ary(0)
        Case "性别"
            Filter = "性别 = '" & ary(1) & "'"
        Case "民族"
            Filter = "民族 = '" & ary(1) & "'"
        Case "岗类部门"
            If e.node.level = 1 Then
                Filter = "岗位类别 = '" & ary(1) & "'"
            Else
                Filter = "岗位类别 = '" & ary(1) & "' and 工作部门 = '" & ary(2) & "'"
            End If
    End Select
    tbl.Filter = filter
ElseIf e.node.text = "全部"
    tbl.Filter = ""
End If

[此贴子已经被作者于2019/3/23 17:23:40编辑过]

 回到顶部