Question

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);
Was it helpful?

Solution

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

OTHER TIPS

You can use a custom renderer for the toolstrip, you can found a sample in this answer for a similar question.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top