Treeview控件--Name:treeMenu
将treeMenu的HideSelection属性设置为False,
DrawMode属性设置为OwnerDrawText
private void treeMenu_BeforeSelect(object sender, TreeViewCancelEventArgs e)
{
if (treeMenu.SelectedNode != null)
{
//将上一个选中的节点背景色还原(原先没有颜色)
treeMenu.SelectedNode.BackColor = Color.Empty;
//还原前景色
treeMenu.SelectedNode.ForeColor = Color.Black;
}
}
private void treeMenu_DrawNode(object sender, DrawTreeNodeEventArgs e)
{
e.Graphics.FillRectangle(Brushes.White, e.Node.Bounds);
if (e.State == TreeNodeStates.Selected)//做判断
{
e.Graphics.FillRectangle(Brushes.CornflowerBlue, new Rectangle(e.Node.Bounds.Left,e.Node.Bounds.Top,e.Node.Bounds.Width, e.Node.Bounds.Height));//背景色为蓝色
RectangleF drawRect = new RectangleF(e.Bounds.X, e.Bounds.Y, e.Bounds.