0
У меня есть перечислениеЦвет от моей Enum
private enum EventColors
{
Aquamarine,
Azure,
BurlyWood,
CadetBlue,
Gainsboro,
Gold,
Gray,
Khaki,
LawnGreen,
LightGreen,
LightSkyBlue,
Linen,
MediumOrchid,
MediumPurple,
MistyRose,
Olive,
OliveDrab,
Orange,
OrangeRed,
Orchid,
PaleTurquoise,
Peru,
Pink,
Plum,
RoyalBlue,
SandyBrown,
SeaGreen,
SteelBlue,
};
Я выбрал лучшее из System.Drawing.Color, и я хотел бы, чтобы случайно выбрать один:
Array values = Enum.GetValues(typeof(EventColors));
Random rnd = new Random();
EventColors randomBar = (EventColors)values.GetValue(rnd.Next(values.Length));
Как я могу преобразовать случайный выбранного цвета из моего перечисления в System.Drawing.Color. ? Возможно ли это без использования переключателя?
'rnd.Next (int)' return int, когда ваше перечисление начинается с 0, вы можете напрямую использовать свой тип перечисления. – AlirezaJ
Но System.Drawing.Color не является Enum, поэтому я не могу использовать свой рандомизированный int для получения значения цвета. – Cezar
Затем вы должны указать отображение между вашим перечислением в System.Color. Возможно, функция вычисления или поиск словаря. – AlirezaJ