如题: 重绘treeview控件,运行后第一次展开某个节点,被展开节点的所有子节点的text会覆盖控件顶部(即第一个根节点那一排)
代码:
protected override void OnDrawNode(DrawTreeNodeEventArgs e)
{
//节点背景绘制
if ((e.State & TreeNodeStates.Selected) != 0)
{
e.Graphics.FillRectangle(ctbgBrush, e.Bounds);
e.Graphics.DrawString(e.Node.Text, foreFont, cdrawTextBrush,e.Node.Bounds.Left + 50, e.Node.Bounds.Top + 5);
}
else if ((e.State & TreeNodeStates.Hot) != 0)//|| currentMouseMoveNode == e.Node)
{
e.Graphics.FillRectangle(htbgBrush, e.Bounds);
e.Graphics.DrawString(e.Node.Text, foreFont, hdrawTextBrush, e.Node.Bounds.Left + 50, e.Node.Bounds.Top + 5);
}
else
{
e.Graphics.FillRectangle(tbgBrush, e.Bounds);
e.Graphics.DrawString(e.Node.Text, foreFont, drawTextBrush, e.Node.Bounds.Left + 50, e.Node.Bounds.Top + 5);
}
}
截图:https://img-ask.csdn.net/upload/201704/10/1491785256_776757.png
是用的是这个资源写的,他的没事:http://download.csdn.net/detail/jxmlh001/7095331