private static System.Windows.Media.Color GetColorFromHexString(string s)
{
if (s.Length == 8)
{
// Be advised that the values are not ARGB, but instead ABGR.
byte a = System.Convert.ToByte(s.Substring(0, 2), 16);
byte b = System.Convert.ToByte(s.Substring(2, 2), 16);
byte g = System.Convert.ToByte(s.Substring(4, 2), 16);
byte r = System.Convert.ToByte(s.Substring(6, 2), 16);
return System.Windows.Media.Color.FromArgb(a, r, g, b);
}
else
{
byte b = System.Convert.ToByte(s.Substring(0, 2), 16);
byte g = System.Convert.ToByte(s.Substring(2, 2), 16);
byte r = System.Convert.ToByte(s.Substring(4, 2), 16);
return System.Windows.Media.Color.FromArgb(255, r, g, b);
}
}