2010-12-07 102 views
0

我想创建一个自定义的树视图,所以我继承了树状类和创建“CustomTreeView”类树视图选择的节点问题

有我实现了多选的概念..

为了使节点选择,

node.BackColor = SystemColors.Highlight; 
node.ForeColor = SystemColors.HighlightText; 

我使用这些线...

,但问题是,当我使控制为禁用(即启用=假),

所选节点不可见..

任何其他解决方案使节点选择?没有这个启用问题?


编辑:这里是当选择一个节点被称为全功能:

private void ToggleNode(TreeNode node, bool bSelectNode) 
{ 
    if (bSelectNode) 
    { 
     m_SelectedNode = node; 

     if (!m_SelectedNodes.Contains(node)) 
     m_SelectedNodes.Add(node); 

     node.BackColor = SystemColors.Highlight; 
     node.ForeColor = SystemColors.HighlightText; 
    } 
    else 
    { 
     m_SelectedNodes.Remove(node); 
     node.BackColor = this.BackColor; 
     node.ForeColor = this.ForeColor; 
    } 
} 
+0

你能告诉我们一些你的代码吗?从我理解你的描述的方式来看,我无法重现这个问题。禁用的“TreeView”控件仍然遵循为各个节点设置的自定义“BackColor”和“ForeColor”属性。 – 2010-12-07 08:28:31

回答

1

我怀疑这是因为亮点和HighlightText距离足够近,你得到与调光这个效果。

尝试红色和蓝色。它仍然消失吗?