Foxtable(狐表)用户栏目专家坐堂 → 多层级目录树一次性取值(复选框,勾选),父级值不取,如何操作


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

主题:多层级目录树一次性取值(复选框,勾选),父级值不取,如何操作

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


加好友 发短信
等级:三尾狐 帖子:734 积分:5645 威望:0 精华:0 注册:2008/9/6 11:22:00
  发帖心情 Post By:2011/6/28 15:05:00 [只看该作者]

以下是引用hhbb在2011-6-28 14:43:00的发言:
trv.AllNodes(n).ParentNode.Expand

我还是没有理解解决


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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2011/6/28 15:12:00 [只看该作者]

Dim trv As WinForm.TreeView = Forms("窗口1").Controls("TreeView1")

For Each nd As WinForm.TreeNode In trv.AllNodes
    If nd.Checked = True AndAlso nd.Nodes.Count = 0 Then
        trv.AllNodes(nd.parentnode.level).ParentNode.Expand
        Return "最末级节点名称:" & nd.name
    Else
        nd.Checked = False       
    End If
Next


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


加好友 发短信
等级:等待验证 帖子:386 积分:2482 威望:0 精华:1 注册:2011/5/10 11:13:00
  发帖心情 Post By:2011/6/28 15:32:00 [只看该作者]

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
Dim nd As WinForm.TreeNode
Dim n1,i,n As Integer

For n  =0 To trv.AllNodes.Count-1 
    If trv.AllNodes(n).Checked  = True  Then
        n1 = n
    End If
Next

For i = n1 To 0 Step -1
    nd = trv.AllNodes(i).ParentNode
    If nd IsNot Nothing Then
        nd.Expand
    Else
        Exit For               
    End If
Next
[此贴子已经被作者于2011-6-28 15:50:02编辑过]

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


加好友 发短信
等级:三尾狐 帖子:734 积分:5645 威望:0 精华:0 注册:2008/9/6 11:22:00
  发帖心情 Post By:2011/6/28 16:43:00 [只看该作者]

谢谢

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


加好友 发短信
等级:三尾狐 帖子:734 积分:5645 威望:0 精华:0 注册:2008/9/6 11:22:00
  发帖心情 Post By:2011/7/1 1:08:00 [只看该作者]

遇到新问题,只取了第三层的一个值 第一、二层怎么也打开了

红色处,请帮助修改一下,谢谢

Dim CtStr As String = CurrentTable.Current("借方必有")

Dim CtStrsS() As String = ctstr.Split(",")

.............

    '节点展开
    Dim nd2 As WinForm.TreeNode
    Dim n1,i,n As Integer
    For n = 0 To trv.AllNodes.Count-1
        If trv.AllNodes(n).Checked  = True  Then
            n1 = n
            For i = n1 To 0 Step -1
                nd2 = trv.AllNodes(i).ParentNode
                If nd2 IsNot Nothing Then
                    nd2.Expand()
                Else
                    Exit For
                End If
            Next
        End If
    Next
Next


图片点击可在新窗口打开查看此主题相关图片如下:e.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2011-7-1 9:14:00编辑过]

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/7/1 8:27:00 [只看该作者]

For Each nd As Winform.TreeNode In trv.AllNodes
    If nd.Checked  = True  Then
        Dim pd As winform.TreeNode = nd.ParentNode
        Do While pd IsNot Nothing
            pd.Expand
            pd = pd.ParentNode
        Loop
    End If
Next

 回到顶部
总数 16 上一页 1 2