Как в WTL создать COwnerDrawListBox?
Начал изучать WTL. Хочу создать с помощью него контрол следующего характера.
Имеется ListBox, разделен на несколько колонок (для простоты пусть будет статическое число колонок, 3 шт.), в первом столбце находится просто текст, во втором тоже текст, но на активной строке в ячейке отображается ComboBox, и спомощью него можно выбирать значение ячейки в этом столбце, третий столбец тоже имеет данные строкового типа но на активной строке в этом столбце отображается Edit, что позволяет вводить текст с клавиатуры для этой ячейки.
Прорисовывать и разбивать на части ListBox особого труда не составило, а вот как туда добавить еще контроллы, в частном случае ComboBox и Edit. Может кто нибудь создавал собственные контроллы в WTL, подскажите как ПРАВИЛЬНО реализовать это.
Кое-че вот тута сделал (см. вложение), как сделать чтоб Edit и ComboBox нормально прорисовывались, при выборе линий в ListBox все становятся туда куда надо вот только не прорисовываются нормально.
Не делал именнно такой контрол, но я бы подошел следующим образом:
1. Использовал бы CListViewCtrl, как базу.
1. Посмотрел может ли помочь мне стиль LVS_EDITLABELS
2. Нарисовать ячейку с кнопкой в углу не составляет проблем. Для этого надо лишь использовать DrawState и DrawText в обработчике CustomDraw.
3. Выпадающий список придется рисовать, как дочернее окно поверх list-a после его перерисовки