以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关于TreeView选取值的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=176521) |
||||
-- 作者:hongye -- 发布时间:2022/4/16 1:06:00 -- 关于TreeView选取值的问题
学习了TreeView的选取代码
For Each nd As WinForm.TreeNode In e.node.AllNodes \'同步子节点选中状态
但是发现问题 1,先取字节点后,不能同步上一级节点,请问怎么改代码? 2,选取上一级节点后,在DropDownBox的框里除了有子节点的值还有上一级节点的值,我只需要子节点的数据,请问如何取值? 3,取值我的想法是按我选取的顺序在DropDownBox的框里排序,有什么办法? [此贴子已经被作者于2022/4/16 1:10:13编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2022/4/16 9:13:00 -- 1、 If e.node.Checked = False Then \'如果本次操作为清除节点选中状态 Dim pd As WinForm.TreeNode = e.node.ParentNode \'获取父节点 Do While pd IsNot Nothing pd.Checked = False \'清除父节点选中状态 pd = pd.ParentNode \'继续获取上一层级的父节点 Loop End If 改为 Dim pd As WinForm.TreeNode = e.node.ParentNode \'获取父节点 Do While pd IsNot Nothing pd.Checked = e.node.Checked pd = pd.ParentNode \'继续获取上一层级的父节点 Loop 2、如果是指获取最底层的节点 方法2、判断是否有子节点:http://www.foxtable.com/webhelp/topics/0887.htm if e.node.nodex.count = 0 then msgbox(“最底层节点”) endif 3、要做递归,先遍历所有的第一层节点,判断有子节点的,递归遍历子节点的节点
|
||||
-- 作者:hongye -- 发布时间:2022/4/16 11:00:00 --
Dim pd As WinForm.TreeNode = e.node.ParentNode \'获取父节点 上面这个代码好像不行,如果同一层级上有两个子节点,应该是全部选取才能让上级节点勾上 if e.node.nodex.count = 0 then
msgbox(“最底层节点”)
endif
这个代码也不能用 |
||||
-- 作者:有点蓝 -- 发布时间:2022/4/16 11:24:00 -- 1、遍历判断上级节点的所有子节点,如果全部勾选就勾选 Do While pd IsNot Nothing dim b as boolean for each n as winform.treenode in pd.nodes if n.Checked=false then b = true exit for end if next pd.Checked = not b pd = pd.ParentNode \'继续获取上一层级的父节点 Loop 2、 if e.node.nodes.count = 0 then
|
||||
-- 作者:hongye -- 发布时间:2022/4/16 11:46:00 -- 3、要做递归,先遍历所有的第一层节点,判断有子节点的,递归遍历子节点的节点
这个意思不懂,有没有类似的实例?
|
||||
-- 作者:有点蓝 -- 发布时间:2022/4/16 11:48:00 -- 类似:http://www.foxtable.com/webhelp/topics/2416.htm |
||||
-- 作者:hongye -- 发布时间:2022/4/16 19:51:00 -- 学习了一天没搞懂,太深奥了,求帮助
|
||||
-- 作者:有点蓝 -- 发布时间:2022/4/17 20:08:00 -- 哪个控件哪个窗口的功能,怎么测试? |
||||
-- 作者:hongye -- 发布时间:2022/4/17 21:38:00 -- 窗口1的DropBox1打开 |
||||
-- 作者:有点蓝 -- 发布时间:2022/4/17 21:55:00 -- 然后呢?举例说明一下,要做什么,需要返回什么结果? |