我有一个包含很多菜单项的应用程序。我已将menuitem的背景更改为深灰色,将文本更改为白色,但文本旁边的箭头仍为黑色。我想将此箭头的颜色更改为白色。
我在本文件中找到了exlanation:
和stackoverflow上的类似问题:
可以更轻松地更改菜单项旁边的箭头颜色吗? (这是允许您显示子菜单的箭头)。我的意思是使用像ProfessionalColorTable这样的东西。
答案 0 :(得分:3)
very good answer的灵感来自@Hans Passant。 为表单加载或构造函数上的菜单条提供自定义渲染器,如:
this.menuStrip.Renderer = new WhiteArrowRenderer();
并覆盖箭头画:
public class WhiteArrowRenderer : ToolStripProfessionalRenderer {
protected override void OnRenderArrow (ToolStripArrowRenderEventArgs e) {
var tsMenuItem = e.Item as ToolStripMenuItem;
if (tsMenuItem != null)
e.ArrowColor = Color.White;
base.OnRenderArrow(e);
}
}