Сегодня день прошел без реализации того, что я вчера задумал. А в конце дня всё и вовсе пошло на перекосяк. Но начиналось неплохо. Я захотел добавить дополнительный новый пользовательский контрол с множественным выбором данных из списка, укомплектованного с помощью чекбоксов. Сделал, получилось неплохо. Но это только на первый взгляд.
Как это часто бывает - облом подкрался незаметно. Допустил я один серьёзный косяк - использовал статические свойства контролов для привязки элементам к выпадающего списка. И эту ошибку я допустил в целых четырех контролах, включая PropertyGrid - EditComboBox, SearchBox и новом контроле MultiSelect. И из за этого для всех этих элементов работали общие статические свойства, что приводило к таким неприятным моментам, как генерация одного списка элементом в выпадающем окне для всех контролов этого типа. Если в окне разместить один такой контрол, то ничего страшного не будет. Но два и более элемента - и абзац!
Только что я исправил положение для контрола MultiSelect и он теперь корректно работает несмотря на количество его экземпляров в окне. Но над остальными придется повозиться завтра. Вот такие вот невесёлые дела. И до того, о чем планировал (смена оформления и настраиваемый TabControl) я ещё не дошел.
Я тут ещё загорелся желанием сделать нормальную цветовую палитру с визуальным выбором цвета. Немного погуглив в интернете нашел способ получения цвета пикселя с экрана. Так можно делать и скриншоты и даже скринкасты (ну если скорость выполнения программы позволит)! Так что, возможно сделаю, я уже давно мечтал сделать такую цветовую палитру.
Вот немного скриншотов кода на последок:


