Создание веб-сайта при помощи ASP.NET 2.0 и каскадной таблицы стилей (CSS) - Краткий обзор адаптеров элементов управления

ОГЛАВЛЕНИЕ

Краткий обзор адаптеров элементов управления

Когда пользователь посещает ASP.NET-страницу, главной целью страницы будет переработать содержимое в разметку, которую можно отослать обратно клиенту. ASP.NET-страница вырабатывает содержимое посредством прохода по дереву управления, как бы говоря своим элементам управления и статическому содержимому HTML: «Эй, обработайте сами себя». Каждый элемент управления покорно обрабатывает сам себя и возвращает разметку на страницу. Данные куски кода соединяются воедино и возвращаются запрашивающему клиенту.

В свою очередь, когда элемент управления получает приказ об обработке, он спрашивает: "Стоп, а есть ли у меня адаптер, который я должен использовать?" Адаптер элемента управления реализован как класс, унаследованный от класса ControlAdapter и обладает важными методами обработки, такими как BeginRender(), Render(), RenderChildren(), EndRender() и т.д. Если обрабатываемый элемент управления не адаптера, то он производит обработку в своих пределах (то есть он использует стандартную логику обработки  вместо того, чтобы доверять ее внешнему адаптеру элемента управления ). Использовать или нет адаптеры элементов управления - решают файлы определения веб-обозревателя, которые включают в себя информацию о том, какие веб-элементы управления используют адаптеры для каких именно браузеров.

Чтобы использовать адаптер элемента управления в веб-приложениях ASP.NET нам необходимо выполнить два шага:

  1. Создайте (или загрузите) адаптер элемента управления. Опять же - это всего лишь класс, унаследованный напрямую либо косвенно из базового класса ControlAdapter. .NET Framework уже включает в себя некоторые классы которые расширяют класс ControlAdapter- PageAdapter, WebControlAdapter, DataBoundControlAdapter и т.д.- и эти классы зачастую наследуются во время построения адаптера элемента управления.
  2. Настройте либо создайте файл определения веб-обозревателя, чтобы указать, что адаптер элемента управления должен быть использован для конкретного элемента-управления и пользовательского клиента. Файлы определения веб-обозревателя имеют расширение .browser; по умолчанию файлы определения веб-обозревателя могут быть найдены в %WINDIR%\Microsoft.NET\Framework\v2.0.50727\CONFIG\Browsers. Данная информация может быть настроена для конкретного веб-приложения путем добавления каталога .browser files to the App_Browsers.
В данной статье мы не будем создавать новый адаптер элемента управления, а вместо этого мы загрузим и будем использовать адаптеры элементов управления, поддерживающие CSS компании Microsoft.