TreeView
ノードごとに多色システムを実装しました。しかし、子ノードを展開するたびに、ノードが消費され、rootNode に塗りつぶされます (画像 2 および 3)。コードは私の前の質問からのもので、これはバグがどのように見えるかです
すべてのノードを閉じて再展開すると、グリッチはなくなります (画像 4)。
問題Bounds
は、ドローが適切な場所にない理由です。理由はありますか?
private void treeView1_DrawNode(object sender, DrawTreeNodeEventArgs e)
{
string[] texts = e.Node.Text.Split();
using (Font font = new Font(this.Font, FontStyle.Regular))
{
using (Brush brush = new SolidBrush(Color.Red))
{
e.Graphics.DrawString(texts[0], font, brush, e.Bounds.Left, e.Bounds.Top);
}
using (Brush brush = new SolidBrush(Color.Blue))
{
SizeF s = e.Graphics.MeasureString(texts[0], font);
e.Graphics.DrawString(texts[1], font, brush, e.Bounds.Left + (int)s.Width, e.Bounds.Top);
}
}
}