【发布时间】:2014-12-17 23:23:04
【问题描述】:
我有一个带有 MenuStrip 的应用程序,每次我将鼠标悬停在 MenuItem 上时,它都会突出显示蓝色。
我已尝试更改 BackColor 和 ForeColor,但这不是问题。
有没有办法禁用它?
【问题讨论】:
标签: c# winforms menustrip toolstripmenu
我有一个带有 MenuStrip 的应用程序,每次我将鼠标悬停在 MenuItem 上时,它都会突出显示蓝色。
我已尝试更改 BackColor 和 ForeColor,但这不是问题。
有没有办法禁用它?
【问题讨论】:
标签: c# winforms menustrip toolstripmenu
这对最终用户来说毫无用处:
internal class NoHighlightRenderer : ToolStripProfessionalRenderer {
protected override void OnRenderMenuItemBackground(ToolStripItemRenderEventArgs e) {
if (e.Item.OwnerItem == null) {
base.OnRenderMenuItemBackground(e);
}
}
}
然后将其应用到您的 MenuStrip:
menuStrip1.Renderer = new NoHighlightRenderer();
【讨论】:
if 更改为 if(e.Item.Enabled)。