颜色可以通过.ToArgb(),.ToKnownColor(),.ToString(),.R/G/B等转换为各种格式,int,string等但有没有方法把int,string类型,转换为对应颜色?好像在Convert中没有这样的方法吧?有没有办法呢?

解决方案 »

  1.   

    RGB颜色与HSV颜色互换,及其用途
    http://kb.cnblogs.com/a/1549903/
      

  2.   

    以label为例,在颜色选择框中选取了颜色值,并通过label.backcolor 进行转换。//RRGGBB--->String  label.BackColor = ColorTranslator.FromHtml("#RRGGBB");//String--->#RRGGBB  string str=ColorTranslator.ToHtml(System .Drawing.Color.FromArgb(R,G,B));  string str=ColorTranslator.ToHtml(System .Drawing.Color.FromArgb (label8 .BackColor .R ,label8 .BackColor .G ,label8 .BackColor .B ));
      

  3.   

    int iColor = 0x456;
    Color c1 = (Color)i;至于通过名字找颜色,则可以通过Color.FromName()方法获取
      

  4.   

    Public ForeColor As System.Drawing.Color = ColorTranslator.FromHtml("")
    转成10进制
    然后用 Color.FromArgb
    Color yourColor = Color.FromName("");string s= "";
    ColorConverter cc = new ColorConverter();
    textBox1.BackColor = (Color)cc.ConvertFromString(s);