更改节点颜色的一部分

时间:2012-12-06 15:29:07

标签: c# winforms colors treeview

我有一个TreeView,我需要每个节点都支持多色文本。

我真的不知道如何把它写成文字,所以寻找答案有点困难。

enter image description here

上面的图片代表了我想要的东西,但唯一的区别是我不想要矩形我希望里面的文字是橙色的。所以Node.Text的一部分是默认颜色,其余部分是橙色。我不知道这是否会改变,但每个节点都有两个单词,第一个单词是默认颜色,第二个单词是橙色。所以我不需要将一个单词分成两种颜色。

我知道应该从哪里开始看?

2 个答案:

答案 0 :(得分:1)

您需要拥有者绘制文字。请查看TreeView.DrawNode event,并特别使用OwnerDrawText value of the TreeViewDrawMode enumeration

从链接:

  

使用此事件可自定义TreeView中节点的外观   使用所有者绘图控制。

     

仅当DrawMode属性设置为时才会引发此事件   OwnerDrawAll或OwnerDrawText的TreeViewDrawMode值。该   下表说明了如何自定义TreeNode   DrawMode属性设置为这些值。

答案 1 :(得分:1)

查看TreeView.DrawNode event。文档中有一个例子。