Советы и приемы при работе с ListView
ОГЛАВЛЕНИЕ
В этой статье я перейду от основ шаблонов и привязки данных ListView к применению функций, довольно распространенных в реальных страницах, но требующих некоторого количества дополнительного кода. Я покажу, как использовать вложенные элементы управления ListView для создания иерархических представлений данных и как расширять модель событий ListView путем создания специального производного класса ListView.
В частности, я улучшу модель событий, чтобы она позволяла использовать различные шаблоны для различных групп привязанных элементов данных. В частности, будет показано, как использовать особый шаблон для всех элементов данных в наборе, отвечающих определенному критерию. Это означает гораздо больше, чем просто различное оформление различных событий, и это можно без труда проделать в любом элементе управления представления, просто обработав событие ItemDataBound.
Обычно меню реализуются как последовательность тегов <li>, оформленных с помощью таблицы стилей CSS. Визуализация плоского меню не вызывает особых проблем с привязкой, но что если необходимы одно или несколько подменю? В данном случае можно либо использовать встроенный элемент управления Menu («Меню»), либо создать более индивидуализированную стратегию визуализации, используя ListView. Между прочим, отметьте, что по умолчанию элемент управления Menu использует вывод на основе таблиц, в отличие от более ориентированного на CSS вывода, который можно получить с помощью ListView. (Чтобы получить ориентированный на CSS вывод для элемента управления Menu, необходимо установить и настроить набор средств CSS Control Adapter Toolkit, который можно загрузить с веб-узла www.asp.net.)