2013-12-17 142 views
3

我coulnd找到一个合适的名称和短语这个解释,所以这里的一个画面:更改下拉菜单列表项方

enter image description here

我想改变白色区域的如上面所示红色圆圈变成所需的颜色。我用下面的代码来改变其他颜色:

在窗体本身:

menuStrip1.Renderer = new ToolStripProfessionalRenderer(new MenuStripColorTable()); 

类:

class MenuStripColorTable : ProfessionalColorTable 
{ 
    private Color backColor = (Color) new ColorConverter().ConvertFromString("#333333"); 

    //menu item background en border 
    public override Color MenuItemBorder 
    { 
     get{ return Color.White; } 
    } 

    public override Color MenuStripGradientBegin 
    { 
     get { return backColor; } 
    } 
    .... 

任何想法,我应该重写或改变?

+0

这是菜单项的一部分。它是图标图片框的位置。希望这可以帮助你找到它。在WPF中它也是菜单项的一部分。 – Franck

+0

啊哈,我重写了图像渐变属性透明,并做了这项工作。谢谢! –

回答

3

通过添加如下因素代码,我成功地取得TRANSPARANT德白格子:

渲染类的MenuStrip:

public override Color ImageMarginGradientBegin 
{ 
    get { return Color.Transparent; } 
} 
public override Color ImageMarginGradientMiddle 
{ 
    get { return Color.Transparent; } 
} 
public override Color ImageMarginGradientEnd 
{ 
    get { return Color.Transparent; } 
} 

本书虽然文字不左对齐。但这并不是什么大问题。信用弗兰克也!

+0

只是将其标记为正确答案,并关闭胎面它将帮助别人 –

+0

我不能选择我自己的答案是最好的,我不得不等待2天第一 –