Итак, у меня есть MenuStrip
с парой ToolStripMenuItem
с.Два из моих ToolStripMenuItem
компонентов имеют фоновое изображение (значок батареи и значок выключения).
Теперь я хочу отключить стандартный MenuStrip
эффект наведения мыши (этот голубоватый фон) для элементов ToolStripMenuItem
который я задал фоном.Чтобы добиться этого, я переопределил реализацию события OnRenderMenuItemBackground
, например:
internal class NoHighlightRenderer : ToolStripProfessionalRenderer
{
protected override void OnRenderMenuItemBackground(ToolStripItemRenderEventArgs e)
{
if (e.Item.OwnerItem != null)
{
base.OnRenderMenuItemBackground(e);
}
}
}
И использовал этот пользовательский рендерер для моего MenuStrip
следующим образом:
myMenuStrip.Renderer = new NoHighlightRenderer();
Это прекрасно работаетдля элементов, которые не имеют установленного фонового изображения.Для тех с установленным фоном фоновое изображение не будет отображаться.
Я хочу, чтобы фоновое изображение было видимым, как это сделать?