Mar*_*ina 4 c# menuitem winforms
我有一个包含很多菜单项的应用程序。我已将菜单项的背景更改为深灰色,将文本更改为白色,但文本附近的箭头仍为黑色。我想把这个箭头的颜色改成白色。
我在本文档中找到了解释:
以及关于 stackoverflow 的类似问题:
是否可以以更简单的方式更改菜单项旁边箭头的颜色?(这是允许您显示子菜单的箭头)。我的意思是使用像 ProfessionalColorTable 这样的东西。
灵感来自@Hans Passant这个非常好的答案。
在表单加载或构造函数时为您的菜单条提供自定义渲染器,例如:
this.menuStrip.Renderer = new WhiteArrowRenderer();
Run Code Online (Sandbox Code Playgroud)
并覆盖箭头油漆:
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);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2346 次 |
| 最近记录: |