a·gen·tic a·gil·i·ty

Custom UI colour scheme for Windows Forms .NET

TL;DR; Learn how to customise Windows Forms ToolStrip, MainMenu, and StatusBar colours in .NET by creating a custom ColorTable and applying it with a custom renderer.

Published on
2 minute read
Image
https://nkdagility.com/resources/2vSr2gsP4Rt
Subscribe

The easyest way to customise you display of your ToolStrip, MainMenu and StatusBar is to use a custom ColorTable.

Just inherit from the ProfessionalColorRenderer and override what you want, with the colors you want:

1   1:  Public Class MortgagesPlcColorTable
1   2:          Inherits ProfessionalColorTable
1   3:   
1   4:          Public Overrides ReadOnly Property ButtonCheckedHighlightBorder() As System.Drawing.Color
1   5:              Get
1   6:                  Return MyBase.ButtonCheckedHighlightBorder
1   7:              End Get
1   8:          End Property
1   9:   
1  10:          Public Overrides ReadOnly Property MenuItemPressedGradientMiddle() As System.Drawing.Color
1  11:              Get
1  12:                  Return Color.FromArgb(91, 91, 91)
1  13:              End Get
1  14:          End Property
1  15:   
1  16:          Public Overrides ReadOnly Property ToolStripContentPanelGradientBegin() As System.Drawing.Color
1  17:              Get
1  18:                  Return Color.FromArgb(80, 80, 80)
1  19:              End Get
1  20:          End Property
1  21:   
1  22:          Public Overrides ReadOnly Property ToolStripContentPanelGradientEnd() As System.Drawing.Color
1  23:              Get
1  24:                  Return Color.WhiteSmoke
1  25:              End Get
1  26:          End Property
1  27:   
1  28:          Public Overrides ReadOnly Property ToolStripDropDownBackground() As System.Drawing.Color
1  29:              Get
1  30:                  Return Color.FromArgb(91, 91, 91)
1  31:              End Get
1  32:          End Property
1  33:   
1  34:          Public Overrides ReadOnly Property ToolStripGradientBegin() As System.Drawing.Color
1  35:              Get
1  36:                  Return Color.FromArgb(80, 80, 80)
1  37:              End Get
1  38:          End Property
1  39:   
1  40:      End Class

Once you have done this, all you need now is to add it to your contols:

1   1:          System.Windows.Forms.ToolStripManager.Renderer = New ToolStripProfessionalRenderer(New MortgagesPlc.Windows.Forms.MortgagesPlcColorTable)

All done! If you have problems you can inherit from the ToolStrip control and change the renderer in the constructor…

Technorati Tags: .NET

Smart Classifications

Each classification [Concepts, Categories, & Tags] was assigned using AI-powered semantic analysis and scored across relevance, depth, and alignment. Final decisions? Still human. Always traceable. Hover to see how it applies.

Subscribe

Connect with Martin Hinshelwood

If you've made it this far, it's worth connecting with our principal consultant and coach, Martin Hinshelwood, for a 30-minute 'ask me anything' call.

Our Happy Clients​

We partner with businesses across diverse industries, including finance, insurance, healthcare, pharmaceuticals, technology, engineering, transportation, hospitality, entertainment, legal, government, and military sectors.​

Akaditi Logo

Akaditi

Xceptor - Process and Data Automation Logo

Xceptor - Process and Data Automation

Cognizant Microsoft Business Group (MBG) Logo

Cognizant Microsoft Business Group (MBG)

ProgramUtvikling Logo

ProgramUtvikling

Graham & Brown Logo

Graham & Brown

SuperControl Logo

SuperControl

Slaughter and May Logo

Slaughter and May

DFDS Logo

DFDS

Workday Logo

Workday

Freadom Logo

Freadom

Epic Games Logo

Epic Games

Bistech Logo

Bistech

Milliman Logo

Milliman

Capita Secure Information Solutions Ltd Logo

Capita Secure Information Solutions Ltd

Hubtel Ghana Logo

Hubtel Ghana

MacDonald Humfrey (Automation) Ltd. Logo

MacDonald Humfrey (Automation) Ltd.

Schlumberger Logo

Schlumberger

ALS Life Sciences Logo

ALS Life Sciences

New Hampshire Supreme Court Logo

New Hampshire Supreme Court

Ghana Police Service Logo

Ghana Police Service

Department of Work and Pensions (UK) Logo

Department of Work and Pensions (UK)

Nottingham County Council Logo

Nottingham County Council

Royal Air Force Logo

Royal Air Force

Washington Department of Enterprise Services Logo

Washington Department of Enterprise Services

SuperControl Logo

SuperControl

Healthgrades Logo

Healthgrades

Capita Secure Information Solutions Ltd Logo

Capita Secure Information Solutions Ltd

Slicedbread Logo

Slicedbread

CR2

NIT A/S