C#中TreeView节点的自定义绘制方法
本文实例讲述了C#中TreeView节点的自定义绘制方法。分享给大家供大家参考。具体如下:
if((e.State&TreeNodeStates.Selected)!=0) { //演示为绿底白字 e.Graphics.FillRectangle(Brushes.DeepSkyBlue,e.Node.Bounds); FontnodeFont=e.Node.NodeFont; if(nodeFont==null)nodeFont=((TreeView)sender).Font; e.Graphics.DrawString(e.Node.Text,nodeFont,Brushes.White,Rectangle.Inflate(e.Bounds,2,0)); } else { e.DrawDefault=true; } if((e.State&TreeNodeStates.Focused)!=0) { using(PenfocusPen=newPen(Color.Black)) { focusPen.DashStyle=System.Drawing.Drawing2D.DashStyle.Dot; RectanglefocusBounds=e.Node.Bounds; focusBounds.Size=newSize(focusBounds.Width-1, focusBounds.Height-1); e.Graphics.DrawRectangle(focusPen,focusBounds); } }
希望本文所述对大家的C#程序设计有所帮助。