Foxtable(狐表)用户栏目专家坐堂 → [求助]如何实现单选目录树


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

主题:[求助]如何实现单选目录树

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


加好友 发短信
等级:幼狐 帖子:174 积分:2349 威望:0 精华:0 注册:2015/8/12 15:36:00
[求助]如何实现单选目录树  发帖心情 Post By:2015/9/8 13:44:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20150908134216.png
图片点击可在新窗口打开查看

如图:节点层级为0 时,只能单选。如何做到
[此贴子已经被作者于2015/9/8 13:58:25编辑过]

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


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

去编写AfterCheckedNode事件,如

 

If e.Node.Level = 0 Then
    If e.node.Checked Then
        For Each nd As WinForm.TreeNode In e.Sender.Nodes
            nd.Checked = False
        Next
        e.node.Checked = True
    End If
End If


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


加好友 发短信
等级:幼狐 帖子:174 积分:2349 威望:0 精华:0 注册:2015/8/12 15:36:00
  发帖心情 Post By:2015/9/11 13:21:00 [只看该作者]

If e.Node.Level = 0 Then
    If e.node.Checked Then
        For Each nd As WinForm.TreeNode In e.Sender.Nodes
            nd.Checked = False
        Next
        e.node.Checked = True
    End If
End If

若选定的是第一节点,只能勾选本子节点,其它节点不得勾选。如何实现

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


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

代码这样写,但双击的情况控制不了。

 

If e.Node.Level = 0 Then
    If e.node.Checked Then
        For Each nd As WinForm.TreeNode In e.Sender.Nodes
            nd.Checked = False
        Next
        e.node.Checked = True
    End If
Else
   
    Dim pnd As WinForm.TreeNode = e.Node.ParentNode
    Do While pnd IsNot Nothing
        If pnd.checked = False Then
            pnd = pnd.ParentNode
        Else
            Exit Do
        End If
    Loop
   
    If pnd Is Nothing Then
        e.node.Checked = False
    End If
End If


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


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

如果要做,就必须绑定事件

 

 下载信息  [文件大小:292.0 KB  下载次数:35]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table


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


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

测试了一下快速双击勾选的话,只触发一次事件,这个是treeview的bug,没办法解决。

 回到顶部