Здравствуйте. В общем есть TabControl с 8-ю вкладками, на каждую из вкладок предпологается по одному ListView(report) контролу. При переключении вкладки TabControla, в ListView ассоциированном со вкладкой должна отображаться информация. В общем не хотелось бы много ListView контролов создавать, можно как то обойтись 1 ? например как в Edit-е ... EM_SETHANDLE. Может быть virtual ListView выход ? Спасибо за внимание.
Обычно это как раз таки делается созданием нного количества контролов. Это избавляет от необходимости изменять как данные в таблице, так и заголовки столбцов и их ширину.
Ну ладно, если даже так то для каждой вкладки нужно создать ещё и диалог, на котором будет распологаться ListView.. и захлебнуться в IsDialogMessage
RDMess Если программа будет хорошо структурирована, не захлебнётесь. Диалог создавать вовсе нет необходимости. Он создается только для удобства, когда очень много элементов нужно уместить на одну вкладку, что очень удобно делать в редакторе ресурсов.
RDMess Угу. В зависимости от номера вкладки отдаете нужную информацию. И даже если ListView всего один, при сколько-нибудь значительном числе записей, Virtual вариант предпочтительнее. Если же записей несколько десятков тысяч (Ex: тлф.справочник на 100,000 номеров) - то без вариантов На _единственный_ диалог кидается Tab Control, который отдает номер вкладки. Все остальное в вашей власти. Ненужные элементы могут быть скрыты, нужные - сделаны видимыми. Если поможет такая аналогия, рассматривайте ваш "мульти-диалог" как набор из наложенных друг на друга невидимых слоев (layers). В зависимости от выбранной вкладки, один из них визуализируется, контролам устанавливаются (при необходимости) параметры, переключается обработчик сообщений (или секция внутри обработчика - что удобнее).