日期:2014-05-18  浏览次数:20952 次

请问如何将字符串#FF0000转换为color颜色?
关于字符串与颜色的转换问题:

用户输入“#FF0000”,则lable1的北京颜色即变成红色

请问大家如何转换?

并且,若知道lable1的背景色,如何求得#RRGGBB类型的字符串?


谢谢大家了。

------解决方案--------------------
System.Drawing.Color.FromName( "#FF0000 ");
ok,搞定,积分
------解决方案--------------------
可以通过如下的方法得到颜色值:
string str = "FF0000 ";
Color color = Color.FromArgb(int.Parse(str, System.Globalization.NumberStyles.HexNumber));

但是,因为Color还有一个分量值,所以和C#里标准的Color还差一个参数,这个参数可以是FF,也就说这个值应该类似于这样: "FFFF0000 " AARGB

string str = "FFFF0000 ";
Color color = Color.FromArgb(int.Parse(str, System.Globalization.NumberStyles.HexNumber));


------解决方案--------------------
System.Drawing.ColorTranslator.FromHtml(( "#FF0000 ");


这个是HTML颜色,不是NAME
------解决方案--------------------
不可以是因为没有设置颜色分量,一个Color是由原来的R,G,B再加上一个A分量组成的。

所以应该是ARGB,而不只是RGB,如果没有A,可以默认为FF。
------解决方案--------------------
若知道lable1的背景色,如何求得#RRGGBB类型的字符串
--->
ColorTranslator.ToHtml