

To see the difference, create a new WPF application in Expression Blend and set the window background to this solid color: #FFA7BCD7. Many developers assume the two models are the same, but that's not the case. HSB (Hue-Saturation-Brightness), also known as HSV (Hue-Saturation-Value) or.For that task, we can use one of two color models: The RGB color model works very well for most purposes, but it isn't well-suited to the task of calculating different shades of a color. Actually, the WPF Color object uses an ARGB color model, as it includes an alpha channel to control transparency. WPF works with the namespace, which includes a Color object built around the familiar RGB color model. However, I have included a sample IValueConverter class for each set of conversions. Instead, I focus on the conversion methods themselves.
#HEX TO HSB COLOR CONVERTER HOW TO#
I don't cover the IValueConverter aspect of the process in this article, since there are a number of good articles on how to create an IValueConverter class. Normally, the methods shown in the attached demos would be included in an IValueConverter object that is included in the data binding of the color property. This article explains how to perform the actual color conversion. So, after a bit of research, I determined how to perform the conversion in pure-WPF.
#HEX TO HSB COLOR CONVERTER CODE#
To me, mixing GDI and WPF is a code smell, which should be avoided in all but exceptional circumstances. System.Drawing is a GDI namespace, and I have a very strong preference for keeping it out of my WPF applications. I recently needed to perform this chore, and I was surprised to find very little on how to do the conversion without resorting to using the System.Drawing namespace. For example, we might calculate the border color as 85% of the background color. In cases where the color value is bound to another property, one would typically calculate the darker shade as a mathematical percentage of the base color. For example, we may want a button border to be a darker shade of the button background. WPF sometimes requires us to convert one shade of a color to another. Download RGB-HSB conversion demo - 20.1 KB.Download RGB-HLS conversion demo - 23.3 KB.
