我正在尝试用system.drwaing.color项填充我的列表,以选择一个随机的颜色并将其设置为backColor。
下面是我的代码:
List<Color> myList = new List<Color>();
//rc.Add(Color.Chartreuse);
//rc.Add(Color.DeepSkyBlue);
//rc.Add(Color.MediumPurple);
foreach (Color clr in System.Drawing.Color)
{
//error
}
Random random = new Random();
Color color = myList[random.Next(myList.Count - 1)];
this.BackColor = color;
错误:'System.Drawing.Color‘是一个’类型‘,它在给定的上下文中无效
有人能帮我一下吗?
发布于 2013-04-21 12:16:10
public static List<Color> ColorStructToList()
{
return typeof(Color).GetProperties(BindingFlags.Static | BindingFlags.DeclaredOnly | BindingFlags.Public)
.Select(c => (Color)c.GetValue(null, null))
.ToList();
}
List<Color> colorList = ColorStructToList();
private void randomBackgroundColorButton_Click(object sender, EventArgs e)
{
List<Color> myList = ColorStructToList();
Random random = new Random();
Color color = myList[random.Next(myList.Count - 1)];
this.BackColor = color;
}
public static List<Color> ColorStructToList()
{
return typeof(Color).GetProperties(BindingFlags.Static | BindingFlags.DeclaredOnly | BindingFlags.Public)
.Select(c => (Color)c.GetValue(null, null))
.ToList();
}
发布于 2013-04-21 11:50:08
string[] colors = Enum.GetNames(typeof(System.Drawing.KnownColor));
发布于 2015-06-28 00:11:59
下面是你的代码:
private List<Color> GetAllColors()
{
List<Color> allColors = new List<Color>();
foreach (PropertyInfo property in typeof(Color).GetProperties())
{
if (property.PropertyType == typeof(Color))
{
allColors.Add((Color)property.GetValue(null));
}
}
return allColors;
}
https://stackoverflow.com/questions/16130756
复制相似问题