【发布时间】:2017-11-14 16:29:32
【问题描述】:
我有一个带有 MenuStrip 的 Windows 窗体应用程序。 BackColor 是蓝色的,但是当窗口调整大小时(在图像中你只看到菜单的左角)并且我想显示其他隐藏项时,背景不是蓝色的。
如何更改背景颜色?
【问题讨论】:
我有一个带有 MenuStrip 的 Windows 窗体应用程序。 BackColor 是蓝色的,但是当窗口调整大小时(在图像中你只看到菜单的左角)并且我想显示其他隐藏项时,背景不是蓝色的。
如何更改背景颜色?
【问题讨论】:
看看这个:ToolStripProfessionalRenderer
public class MyToolStripRenderer : ToolStripProfessionalRenderer
{
/* override styling/drawing here */
}
MenuStrip strip = new MenuStrip();
strip.Renderer = new MyToolStripRenderer();
//this will set RenderMode to "Custom"
public class TestColorTable : ProfessionalColorTable
{
public override Color MenuItemSelected
{
get { return Color.Red; }
}
public override Color MenuBorder //added for changing the menu border
{
get { return Color.Green; }
}
你可以这样使用它:
private void Form1_Load(object sender, EventArgs e)
{
menuStrip1.Renderer = new ToolStripProfessionalRenderer(new TestColorTable());
}
【讨论】: