How to change the back color of tool strip split button in windows form c#

Murugesan picture Murugesan · Jul 7, 2012 · Viewed 8.4k times · Source

How to change the back color of the tool strip split button in windows forms application. Back color property not working.. This the code in designer class..

        this.level.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
        this.level.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
        this.level.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
        this.autoToolStripMenuItem1,
        this.loadToolStripMenuItem1});
        this.level.Image = global::PACS.Properties.Resources.winlevel;
        this.level.ImageTransparentColor = System.Drawing.Color.Red;
        this.level.Margin = new System.Windows.Forms.Padding(1, 1, 1, 2);
        this.level.Name = "level";
        this.level.Size = new System.Drawing.Size(53, 43);
        this.level.Text = "Level";
        this.level.TextImageRelation = System.Windows.Forms.TextImageRelation.Overlay;
        this.level.Paint += new System.Windows.Forms.PaintEventHandler(this.Window_level_Paint);
        this.level.Click += new System.EventHandler(this.Window_level_Click);

Answer

KF2 picture KF2 · Jul 7, 2012

It's BackColor property did not work by default: Accorthing this (ToolStripSplitButton BackColor does not work), follow these two steps:

1) Set BackgroundImage to a valid image. It does not matter what. I use a 1 pixel x 1 pixel BMP as local resource.

2) Set BackgroundImageLayout to None. This is why it does not matter what image you use above.

Result:

enter image description here