以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]目录树查找后节点颜色为何只能部分恢复? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=41090) |
-- 作者:loongtai -- 发布时间:2013/10/11 8:10:00 -- [求助]目录树查找后节点颜色为何只能部分恢复? 如题,窗口中一个目录树,加载时,有两个节点(成品类-制成品类-化学制成品下的“锂离子电池”、“铅酸电池”)的字体设置成黑色,其它节点设置为红色。另有一文本框,通过文本框的内容来查找相应节点,并将节点的颜色设置为蓝色,当再次进行查找时,上次查找的节点颜色恢复为加载时的颜色,本次查找的节点颜色设置为蓝色。 可在进行验证时,1次查找:输入“电池”时,得到的结果有5个节点,其中含黑色字体的两个节点和另3个红色节点,查找后颜色都变成蓝色了 2次查找:在1次查找后再输入“金属”时,1次查找中的原先为红色的3个节点再次由蓝色恢复成红色,可是原先为黑色的2个节点依旧还是蓝色,并未恢复。
[此贴子已经被作者于2013-10-11 9:08:46编辑过]
|
-- 作者:Bin -- 发布时间:2013/10/11 8:30:00 -- 你的例子,我测试是变回黑色了啊 |
-- 作者:loongtai -- 发布时间:2013/10/11 9:05:00 -- 在这个上面试的确好使了,我又回到自己的项目中对比了下,我将加载时的节点颜色设置代码改了下: Dim tr As WinForm.TreeView = e.Form.Controls("TreeView1") \'通过数据表加载目录树 DataTables("物料分类表").load tr.GenerateTree("物料分类表","分级代码","分类名称") For Each nd As winform.treenode In tr.allnodes If nd.text<>"锂离子电池" AndAlso nd.text<>"铅酸电池" Then nd.ForeColor=Color.red End If Next 这样好像就出现我说的那种现象了。 虽然节点颜色默认是黑色,但是如果事先不对其进行设置=Color.Black,直接用默认值,就不行。
[此贴子已经被作者于2013-10-11 9:08:07编辑过]
|