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:
The system color name will still be shown in the Property Grid, the conversion occurs automatically in the background.
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 |
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 |
|---|---|
| ~ActiveBorder | activeborder |
| ~ActiveCaption | activecaption |
| ~ActiveCaptionText | captiontext |
| ~AppWorkspace | appworkspace |
| ~ButtonFace | buttonface |
| ~ButtonHighlight | buttonhighlight |
| ~ButtonShadow | buttonshadow |
| ~Control | buttonface |
| ~ControlDark | buttonshadow |
| ~ControlDarkDark | threeddarkshadow |
| ~ControlLight | buttonface |
| ~ControlLightLight | buttonhighlight |
| ~ControlText | buttontext |
| ~Desktop | background |
| ~GradientActiveCaption | activecaption |
| ~GradientInactiveCaption | inactivecaption |
| ~GrayText | graytext |
| ~Highlight | highlight |
| ~HighlightText | highlighttext |
| ~HotTrack | highlight |
| ~InactiveBorder | inactiveborder |
| ~InactiveCaption | inactivecaption |
| ~InactiveCaptionText | inactivecaptiontext |
| ~Info | infobackground |
| ~InfoText | infotext |
| ~Menu | menu |
| ~MenuBar | menu |
| ~MenuHighlight | highlighttext |
| ~MenuText | menutext |
| ~ScrollBar | scrollbar |
| ~Window | window |
| ~WindowFrame | windowframe |
| ~WindowText | windowtext |
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 colors in rules, for example:
="invalid"
will output as Transparent, unless prefixed with an exclamation mark (!)
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: