나는 TreeView
이고 각각은 Node.Text
에 두 단어가 있습니다. 첫 번째 단어와 두 번째 단어의 색상이 달라야합니다. 나는 이미 DrawMode
속성과 DrawNode
이벤트를 사용하여 텍스트 색상을 변경하고 있지만 두 가지 색상으로 Node.Text
을 분할하는 방법을 알 수는 없습니다. 누군가 내가 TextRenderer.MeasureText
를 사용할 수 있다고 지적했으나 나는 그것을 사용하는 방법/방법이 없다.Treenode 텍스트가 다른 색깔의 단어
누군가가 아이디어가 있습니까?
코드 :
formload()
{
treeView1.DrawMode = TreeViewDrawMode.OwnerDrawText;
}
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);
}
코드를 설명해 주시겠습니까? –
winforms에서는 가능하지 않습니다. 이미지를 사용해야합니다. – MrFox
@MrFox 불가능합니다. – phadaphunk