C#名称中的颜色值

C#名称中的颜色值,c#,enums,colors,C#,Enums,Colors,我需要得到一种颜色的RGB值,给定它的名称为C#。我正在尝试使用预定义的KnownColors枚举,但不知道如何获取值 有什么帮助吗 谢谢。使用: 然后是RGB值的blue.R、blue.G和blue.B 或者,如果您只需要RGB颜色的int值,可以执行以下操作: int blueRgb = Color.FromKnownColor(KnownColor.Blue).ToArgb(); 使用然后使用Color.R,Color.G和Color.B,访问RGB值颜色类有一些有趣的静态方法: Co

我需要得到一种颜色的RGB值,给定它的名称为C#。我正在尝试使用预定义的KnownColors枚举,但不知道如何获取值

有什么帮助吗

谢谢。

使用:

然后是RGB值的
blue.R
blue.G
blue.B


或者,如果您只需要RGB颜色的
int
值,可以执行以下操作:

int blueRgb = Color.FromKnownColor(KnownColor.Blue).ToArgb();

使用然后使用
Color.R
Color.G
Color.B
,访问RGB值颜色类有一些有趣的静态方法:

Color.FromName ("Red").ToArgb()
除此之外,还有一些属性,如:

var c = Color.FromName ("Red"); // Or use Color.FromKnownColor (KnownColor.Red) 

Console.WriteLine (String.Format ("RGB: {0} {1} {2}", c.R, c.G, c.B);

检查此项

在此处输入代码
您可以执行的操作

  int r = Color.FromName("Purple").ToArgb();
     //Or 
     int r1 = Color.FromKnownColor(KnownColor.Purple).ToArgb();

Color.FromName和Color.fromKnown颜色将返回Color对象,如果需要,它具有
红色
绿色
蓝色
组件的属性。

Toargb返回32位int,而不是他想要的。编辑:我不这么认为。问题是我把颜色的名字写在一个字母里了string@baruch当前位置在这种情况下,弗雷德里克·盖瑟斯的回答很中肯:)FromKnownColor更有意义,因为他说这就是他正在使用的。
Color c = (Color)TypeDescriptor.GetConverter(typeof(Color)).ConvertFromString("Red");
Color clr = FromKnownColor(System.Drawing.KnownColor.Blue);
string.Format("R:{0}, G:{1}, B:{2}" clr.R, clr.G, clr.B);
  int r = Color.FromName("Purple").ToArgb();
     //Or 
     int r1 = Color.FromKnownColor(KnownColor.Purple).ToArgb();