Home Search

DriveWorks Solo 24
System Color Conversion

Send Feedback

System Color Conversion

From DriveWorks 24.1 onwards, any color property that references a System color (for example ControlText) will be automatically converted to a hex color when rendered on a Form (for example #000000).

This ensures system colors render the same color across desktop, all browsers and all color schemes (light/dark).

Prior to this release, system colors were automatically converted from the .NET system color (for example ControlText) to the matching CSS system color (for example buttontext).

Using a tilde (~) prefix with any system color (for example ~ControlText) will restore the previous functionality.

This applies to the following:

  • Form Controls - Any Color property (for example Background Color, Caption Color, etc.)
  • User form - Background Color property.
  • [color] tag used to format text presented in a form control.

The system color name will still be shown in the Property Grid, the conversion occurs automatically in the background.

Default Conversion (Hex Codes)

A System color applied to any color property or rule will be converted to a Hex Code.

The image below shows a System color applied to the Background Color property.

The table below is a full list of all available System colors and the respective Hex Code conversion value:

Input (System Color Name)Output: Default (Hex Color)
ActiveBorder#B4B4B4
ActiveCaption#99B4D1
ActiveCaptionText#000000
AppWorkspace#ABABAB
ButtonFace#F0F0F0
ButtonHighlight#FFFFFF
ButtonShadow#A0A0A0
Control#F0F0F0
ControlDark#A0A0A0
ControlDarkDark#696969
ControlLight#E3E3E3
ControlLightLight#FFFFFF
ControlText#000000
Desktop#FFFFFF
GradientActiveCaption#B9D1EA
GradientInactiveCaption#D7E4F2
GrayText#6D6D6D
Highlight#0078D7
HighlightText#FFFFFF
HotTrack#0066CC
InactiveBorder#F4F7FC
InactiveCaption#BFCDDB
InactiveCaptionText#000000
Info#FFFFE1
InfoText#000000
Menu#F0F0F0
MenuBar#F0F0F0
MenuHighlight#3399FF
MenuText#000000
ScrollBar#C8C8C8
Window#FFFFFF
WindowFrame#646464
WindowText#000000

Enabling legacy system color conversion using tilde (~) prefix

From DriveWorks 24.1 onwards, System colors prefixed with tilde (~) will convert the System name to the matching CSS system color where possible.

Prior to DriveWorks 24.1, this was the default behavior and did not require the tilde prefix to opt-in to CSS mapping.

For example:

~ControlText will convert to the matching CSS system color buttontext.

The image below shows a System color prefixed with tilde (~) , applied to the Background Color property.

Depending on the applied System color the actual color rendered could differ based on the viewer, browser or color scheme in use.

Invalid system color values prefixed with tilde (~) will be passed to the client without any conversion applied and a fallback color will be rendered.

This is the same as if they were prefixed with an exclamation mark (!).

The fallback color rendered will depend on the Control, Property and the viewer (Form Design, SOLIDWORKS Task Pane, etc.), browser or color scheme in use.

The table below is a full list of all available System colors prefixed with tilde (~) and the respective CSS mapping conversion value:

Input (~System Color Name)Output: CSS System Color
~ActiveBorderactiveborder
~ActiveCaptionactivecaption
~ActiveCaptionTextcaptiontext
~AppWorkspaceappworkspace
~ButtonFacebuttonface
~ButtonHighlightbuttonhighlight
~ButtonShadowbuttonshadow
~Controlbuttonface
~ControlDarkbuttonshadow
~ControlDarkDarkthreeddarkshadow
~ControlLightbuttonface
~ControlLightLightbuttonhighlight
~ControlTextbuttontext
~Desktopbackground
~GradientActiveCaptionactivecaption
~GradientInactiveCaptioninactivecaption
~GrayTextgraytext
~Highlighthighlight
~HighlightTexthighlighttext
~HotTrackhighlight
~InactiveBorderinactiveborder
~InactiveCaptioninactivecaption
~InactiveCaptionTextinactivecaptiontext
~Infoinfobackground
~InfoTextinfotext
~Menumenu
~MenuBarmenu
~MenuHighlighthighlighttext
~MenuTextmenutext
~ScrollBarscrollbar
~Windowwindow
~WindowFramewindowframe
~WindowTextwindowtext

Forcing color values using exclamation mark (!) prefix (not recommended)

Color values prefixed with an exclamation mark (!) will not have any conversion value applied, and will render the raw value untouched.

For example:

!ControlText will render ControlText, rather than the hex conversion (#000000) or CSS system color (buttontext).

The image below shows a System color prefixed with an exclamation mark (!) applied to the Background Color property.

Depending on the value forced, the actual color rendered could differ based on the viewer, browser or color scheme in use.

Invalid system color values prefixed with an exclamation mark (!) will be passed to the client without any conversion applied and a fallback color will be rendered.

The fallback color rendered will depend on the Control, Property and the viewer (Form Design, SOLIDWORKS Task Pane, etc.), browser or color scheme in use.

Invalid Color Values in Rules

Invalid colors in rules, for example:

="invalid"

will output as Transparent, unless prefixed with an exclamation mark (!)

Unsafe CSS Characters

Color values containing unsafe characters will have no color applied, and the viewer/browser will choose the fallback color that will render.

Characters considered unsafe are as follows:

  • ; (semi-colon)
  • { (open brace)
  • } (close brace)
  • \ (backslash)