我使用System.Windows.Media.Color创建了一个变量。
我可以使用ToString()显示此变量的Hex值;然而,这也给了我alpha值。反正有没有得到RGB值?如果我尝试使用Color.R.ToString();它只给我数值。
我是否必须手动将其更改为十六进制,或者是否有内置方法?
答案 0 :(得分:5)
从我从你的问题中收集的内容,你想将它转换为十六进制格式的颜色。您可以单独转换每个颜色的成员,省略alpha:
string color_str = string.Format("#{0:X2}{1:X2}{2:X2}", Color.R, Color.G, Color.B);
答案 1 :(得分:2)
我发现“ColorTranslator”也以更简洁的方式进行了Color to Hex转换。
Color C = Color.Red;
string HexVal = ColorTranslator.ToHtml(Color.FromArgb(C.R, C.G, C.B)));