如何更改菜单hover颜色

如何更改Windows应用程序菜单的hover(鼠标hover)颜色?

在C#中的任何方法?

要么

通过使用Windows API(DllImport)的任何方式?

见图:

在这里输入图像描述

您正在使用MenuStrip类。 你可以重写它的渲染器。 这里有一个例子,请select你自己的颜色。

public partial class Form1 : Form { public Form1() { InitializeComponent(); menuStrip1.Renderer = new MyRenderer(); } private class MyRenderer : ToolStripProfessionalRenderer { public MyRenderer() : base(new MyColors()) {} } private class MyColors : ProfessionalColorTable { public override Color MenuItemSelected { get { return Color.Yellow; } } public override Color MenuItemSelectedGradientBegin { get { return Color.Orange; } } public override Color MenuItemSelectedGradientEnd { get { return Color.Yellow; } } } } 

ProfessionalColorTable的其他属性控制其他颜色元素。

要更改鼠标hover的边框颜色(在物品上),请使用以下命令:

 public override Color MenuItemBorder { get { return Color.Green; } } 

您也可以使其透明(不可见):

 get { return Color.Transparent; }