Опять студенты приходили, на этот раз с мелким заданием, перечислить все названия цветов в Windows Forms. Заодно уж сделал из этого задания утилитку, чтобы подбирать цвет символов на фоне в Windows Forms. Довел задание, так сказать, до логического конца. В общем, кто не успел сегодня на скайп-чатик, где я всякие мелочи объяснял и делал, ходите на Гитхаб, скачивайте там. Только не забудьте хоть что-нибудь переделать, а то преподы будут ругаться.
Принцип очень простой. Все названия цветов есть в перечислении KnownColor
, а в классе Enum
есть метод GetNames
, который позволяет получить строковый массив с именами элементов перечисления.
string[] ColorNames = Enum.GetNames(typeof(KnownColor));
Вытащить конкретное значение элемента перечисления по его имени (если оно в виде строки) можно с помощью Enum.Parse
KnownColor knownColor = (KnownColor)Enum.Parse(typeof(KnownColor), n);
n
— строковая переменная с именем.
Все остальное стандартно, заполняем в цикле GridView и красим ячейки.
Ну и в довесок в программе есть пример использования ColorDialog
и получение информации о выбранном в диалоге цвете.
И элемента управления TrackBar
для выбора цвета и фона по RGB.
Пользуйтесь на здоровье.
Исходник:
На Гитхабе
На Mega.NZ
Cкомпилированная программка
ЗЫ. Спасибо, Леха, огромное за наводку на GitEve, и удобно, можно всё мышей тыкать, не набивать километры команд в консоли, и идет на всех ОС. Все-таки с этим вашим гитом через консоль несколько неудобно работать, или я пока еще не привык.