字符串颜色名称为C#中的字符串颜色十六进制值

时间:2012-10-12 12:04:36

标签: c# colors

我正在尝试获取以字符串形式传递的颜色的十六进制值。例如,

private string HexColor(string colorName) // like "Red"
{

 // returns hex value like "12345"
}

我获得了将Windows.UI.Color转换为其十六进制值的链接。但不是字符串颜色名称颜色十六进制值。 在此先感谢您的帮助。

更新:适用于地铁应用

3 个答案:

答案 0 :(得分:2)

Color.fromName根据预定义颜色的指定名称创建颜色结构,然后ToArgb

Color.FromName(colorString).ToArgb().ToString("X8").Substring(2,6);

ToString("X8")将十六进制值从整数类型创建为字符串。

答案 1 :(得分:0)

Color c = Color.Red;
string hex = c.R.ToString("X2") + c.G.ToString("X2") + c.B.ToString("X2");

答案 2 :(得分:0)

您可以使用此功能

private string ConvertColorStringToHex(string colorString){
return Color.FromName(colorString).ToArgb().ToString("X8").Substring(2,6);
}