以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]DropDownBox筛选  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=143394)

--  作者:lgj716330
--  发布时间:2019/11/22 22:34:00
--  [求助]DropDownBox筛选
DropDownBox中如何对下拉框中的筛选树进行模糊筛选或定位
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目7.foxdb




--  作者:有点蓝
--  发布时间:2019/11/22 22:42:00
--  
参考:http://www.foxtable.com/webhelp/topics/2961.htm
--  作者:lgj716330
--  发布时间:2019/11/22 22:48:00
--  
嗯,刚找到帮助了,解决了
--  作者:lgj716330
--  发布时间:2019/11/23 16:51:00
--  
筛选树有多个节点,如何实现上个节点选住后,该节点所在的末级节点自动全部选住,如上面项目7,且下拉框最后只显示已选的末级内容
[此贴子已经被作者于2019/11/23 16:57:05编辑过]

--  作者:有点蓝
--  发布时间:2019/11/23 16:56:00
--  
AfterCheckNode事件

if e.Node.checked
For Each cnd As WinForm.TreeNode In e.Node.Nodes 
    
cnd.Checked = true
Next
end if

--  作者:lgj716330
--  发布时间:2019/11/23 17:20:00
--  
Dim s As String 
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
For Each nd As WinForm.TreeNode In trv.ALLNodes
    If nd.Checked Then
        s = s & "," & nd.Text
    End If
Next
e.Form.DropDownBox.Value = s.trim(",")
e.Form.DropDownBox.CloseDropdown

这里如何只将最末级的子节点选过来

--  作者:有点蓝
--  发布时间:2019/11/23 17:24:00
--  
For Each nd As WinForm.TreeNode In trv.ALLNodes
    If nd.nodes.count = 0 andalso nd.Checked Then
        s = s & "," & nd.Text
    End If
Next

--  作者:lgj716330
--  发布时间:2019/11/23 17:55:00
--  
For Each nd As WinForm.TreeNode In trv.ALLNodes
    If nd.nodes.count = 0 AndAlso nd.Checked Then
        s = s & "," & nd.Text
    End If
Next

当取消全选,即没有任何一个节点选中时,会提示:未将对象引用设置到对象的实例。

--  作者:有点蓝
--  发布时间:2019/11/24 21:18:00
--  
这个代码不可能有问题,肯定是其它代码的问题

比如s的定义

dim s as string = ""