以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  可以选择的“三级目录树”代码问题求助!  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=30122)

--  作者:zbsdkq012890
--  发布时间:2013/3/21 13:02:00
--  可以选择的“三级目录树”代码问题求助!

目录树控件的代码设置如下:

Dim trv As WinForm.TreeView = e.Sender
Dim flt As String
For Each nd As WinForm.TreeNode In e.node.Nodes \'同步子节点选中状态
    nd.Checked = e.Node.Checked
Next
If e.node.ParentNode IsNot Nothing Then \'去掉父节点选中状态
    e.node.ParentNode.Checked = False
End If
For Each nd As WinForm.TreeNode In trv.AllNodes
    If nd.Level > 0 AndAlso nd.ParentNode.Checked Then \'如果父节点选中
        Continue For \'跳过此节点,处理下一结点
    End If
    If nd.Checked Then
        If flt > "" Then
            flt = flt & " Or "  \'注意用or而不是And
        End If
        If nd.Level = 0 Then \'注意下面的条件都要用括号括起来
            flt = flt & "( 员工状态 = \'" & nd.Text & "\')"
        Else
          
            flt = flt & "( 员工状态 = \'" & nd.ParentNode.Text & "\' And 部门 = \'" & nd.Text & "\'And 姓名 = \'" & nd.Text & "\')"

        End If
    End If   
Next
Tables("员工").Filter = flt

 

加载窗口后的代码如下:

MainTable = Tables("员工")
e.Form.Controls("TreeView1").BuildTree("员工", "员工状态|部门|姓名")

大侠们请帮帮我把上面的代码给修改一下吧。

[此贴子已经被作者于2013-3-21 14:11:04编辑过]

--  作者:zbsdkq012890
--  发布时间:2013/3/21 14:09:00
--  
那位大侠帮帮忙吧,给我修改修改吧,谢谢啦!
--  作者:狐狸爸爸
--  发布时间:2013/3/21 14:12:00
--  

这里有个任意多级的:

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=30118

 

你先参考一下,如果搞不定,就做个简单的例子发上来。