如何从颜色或画笔类中获取所有标准颜色?
例如,像这样的事情:
Foreach var item in brushes
Do something...
foreach(var color in typeof(Brushes)
.GetProperties(BindingFlags.Static | BindingFlags.Public))
{
var currentColor = color.GetValue(null) as Brush;
}
如果你只想要颜色名称,那么你可以使用LINQ
:
var colorNames = typeof (Brushes)
.GetProperties(BindingFlags.Static | BindingFlags.Public)
.Select(x => x.Name);
var colors = Enum.GetValues(typeof(KnownColor)).Cast<KnownColor>().ToList();
var color = Color.FromKnownColor(colors[0]); //for ex.
或直接
var colors = Enum.GetValues(typeof(KnownColor)).Cast<KnownColor>()
.Select(k => Color.FromKnownColor(k))
.ToList();