以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [分享] 相同目录树的节点同步选择  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=40905)

--  作者:lsy
--  发布时间:2013/10/6 7:48:00
--  [分享] 相同目录树的节点同步选择

目录树有很多属性,但是,他们的值都不是唯一的。例如

FullName,FullPath,Level,Name,Text,Index。

通过以上属性确定唯一的节点,理论上是可能出错的。

有唯一属性值的是DataRow。

通过判断nd.DataRow("_Identify") = e.Node.DataRow("_Identify") AndAlso nd.Level = e.Node.Level AndAlso nd.Index = e.Node.Index

应该就可以确定唯一节点。

本实例中,有两个窗口,各有一个目录树,这两个目录树完全相同。

选择窗口1目录树的某一节点,窗口2的目录树同步选定相同的节点,并用颜色标记。

而且两个目录树的展开与收缩状态,也完全一致。

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:相同目录树的节点同步选定.table


--  作者:程兴刚
--  发布时间:2013/10/6 9:49:00
--  
也可看看这个,不应该出错: http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=40902
--  作者:lsy
--  发布时间:2013/10/6 10:00:00
--  
多个节点出现相同的FullPath是可能的。
--  作者:程兴刚
--  发布时间:2013/10/6 10:04:00
--  
有重名节点?
--  作者:lsy
--  发布时间:2013/10/6 10:31:00
--  
以下是引用程兴刚在2013-10-6 10:04:00的发言:
有重名节点?

又仔细看了看,同级里面,不可能出现同名节点,换句话说,用FullPath或FullName,能够找出唯一节点。

但是反馈到数据表,可能找不到唯一行。

程老师的找节点代码不会出错。

但FullPath或FullName只向上级找,不向下级找,源自数据表的目录树,还是DataRow属性好用一些。


--  作者:ahbrq
--  发布时间:2013/10/6 10:45:00
--  
不应该这样的吧?
--  作者:sunsenfeng
--  发布时间:2013/10/6 13:26:00
--  

在使用目录树文件保存,没有表的情况下,如何来精细控制呢?

我想讲一个节点修改到另一个节点之下,似乎要先删除它,然后根据目标Fullpath,追加新节点,请老师给段代码


--  作者:逛逛
--  发布时间:2013/10/6 20:59:00
--  

向你学习,俺顶。