ColorTranslator.ToHtml()返回字符串问题

我需要hex的颜色字符串,所以我使用ColorTranslator.ToHtml()属性返回Color的字符串hex。

如果我选择一个随机颜色,它会返回“ #FFF0B6 ”等。但是,如果我选择一个系统定义的颜色,例如Color.Black它会在字符串中返回“ Black ”。

无论是否在系统中定义,我都需要字符串中的hex颜色代码。 有什么建议?

我发现这种扩展方法对我来说效果很好:

 public static string ToHexValue(this Color color) { return "#" + color.R.ToString("X2") + color.G.ToString("X2") + color.B.ToString("X2"); } 

根据MSDN ,这确实是ColorTranslator.ToHtml()的目的。