颜色值转化的两种方法 public Color ReturnColorFromString(string color) { string alpha, red, green, blue; if (color.Length == 7) { alpha = "ff"; red = color.Substring(1, 2); green = color.Substring(3, 2); blue = color.Substring(5, 2); } else { alpha = color.Substring(1, 2); red = color.Substring(3, 2); green = color.Substring(5, 2); blue = color.Substring(7, 2); } byte alphaByte = Convert.ToByte(alpha, 16); byte redByte = Convert.ToByte(red, 16); byte greenByte = Convert.ToByte(green, 16); byte blueByte = Convert.ToByte(blue, 16); return Color.FromArgb(alphaByte, redByte, greenByte, blueByte); } /// <summary> /// 从颜色代码转换为RGB /// </summary> /// <param name="strCode"></param> /// <returns></returns> private Color getColorFromCode(string htmlColr) { int baseIndex = 1; byte a, r, g, b; a = r = g = b = 255; if (htmlColr.Length == 9) { a = Convert.ToByte(htmlColr.Substring(baseIndex, 2), 16); baseIndex += 2; } r = Convert.ToByte(htmlColr.Substring(baseIndex, 2), 16); g = Convert.ToByte(htmlColr.Substring(baseIndex += 2, 2), 16); b = Convert.ToByte(htmlColr.Substring(baseIndex += 2, 2), 16); return Color.FromArgb(a, r, g, b); }