【发布时间】:2012-01-03 08:52:25
【问题描述】:
我需要让 TreeView 中节点内的文本在单词或字符中着色。那可能吗?要走的路是什么?我听说过自定义绘图,但没有经验!
【问题讨论】:
标签: c# winforms treeview treenode
我需要让 TreeView 中节点内的文本在单词或字符中着色。那可能吗?要走的路是什么?我听说过自定义绘图,但没有经验!
【问题讨论】:
标签: c# winforms treeview treenode
设置TreeView的属性:
treeView1.DrawMode = TreeViewDrawMode.OwnerDrawText;
然后从 DrawNode 事件:
private void treeView1_DrawNode(object sender, DrawTreeNodeEventArgs e) {
Color nodeColor = Color.Red;
if ((e.State & TreeNodeStates.Selected) != 0)
nodeColor = SystemColors.HighlightText;
TextRenderer.DrawText(e.Graphics,
e.Node.Text,
e.Node.NodeFont,
e.Bounds,
nodeColor,
Color.Empty,
TextFormatFlags.VerticalCenter);
}
更多来自 MSDN:TreeView.DrawNode Event
【讨论】: