Поделиться через


Общие сведения о серверных веб-элементах управления ASP.NET

Обновлен: Ноябрь 2007

При создании веб-страниц ASP.NET можно использовать следующие типы элементов управления:

  • Серверные HTML-элементы управления.   Используемые на сервере HTML-элементы, которые можно запрограммировать. Серверные HTML-элементы управления предоставляют объектную модель, строго соответствующую воспроизводимым ими HTML-элементам.

  • Серверные веб-элементы управления.   Элементы управления, имеющие больше встроенных функциональных возможностей, чем серверные HTML-элементы управления. Серверные веб-элементы управления включают не только элементы управления формы, такие как кнопки и текстовые поля, но и специализированные элементы управления, например календарь, меню и элемент управления иерархического представления. Серверные веб-элементы управления более абстрактны, чем серверные HTML-элементы управления; это проявляется в том, что их объектная модель не обязательно отражает HTML-синтаксис.

  • Проверяющие элементы управления.   Элементы, включающие логику, которая предоставляет возможность контролировать данные, введенные пользователями в элементы управления для ввода, например в элемент управления TextBox. Проверяющие элементы управления позволяют проверить требуемое поле, протестировать на предмет наличия определенного значения или шаблона знаков, удостовериться, что значение лежит в нужном диапазоне и т. д. Дополнительные сведения см. в разделе Проверяющие элементы управления ASP.NET.

  • Пользовательские элементы управления.   Элементы управления, создаваемые для веб-страниц ASP.NET. Можно внедрять пользовательские элементы управления ASP.NET в другие веб-страницы ASP.NET. Это простой способ создания панелей инструментов и других элементов многократного использования. Дополнительные сведения см. в разделе Пользовательские элементы управления ASP.NET.

    zsyt68f1.alert_note(ru-ru,VS.90).gifПримечание.

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

На одной странице могут использоваться все типы элементов управления. В следующих разделах содержатся более подробные сведения о серверных элементах управления ASP.NET.

zsyt68f1.alert_note(ru-ru,VS.90).gifПримечание.

В некоторых случаях для правильной работы серверных элементов управления необходим клиентский сценарий. Если в обозревателе отключена возможность выполнения сценариев, в работе элементов управления возможны сбои. Дополнительные сведения см. в разделе Серверные веб-элементы управления ASP.NET и возможности обозревателей.

Серверные HTML-элементы управления

Серверные HTML-элементы управления являются HTML-элементами (или элементами в других поддерживаемых разметках, таких как XHTML), содержащими атрибуты, которые делают их программируемыми в серверном коде. По умолчанию HTML-элементы на веб-странице ASP.NET недоступны для сервера. Вместо этого они рассматриваются как непрозрачный текст и передаются обозревателю. Тем не менее, при преобразовании HTML-элементов в серверные HTML-элементы управления они представляются как элементы, которые можно программировать на сервере.

Объектная модель для серверных HTML-элементов управления строго соответствует этому свойству элементов. Например, в серверных HTML-элементах управления атрибуты HTML представлены как свойства.

Любой HTML-элемент на странице может быть преобразован в серверный HTML-элемент управления путем добавления атрибута runat="server". Во время синтаксического анализа структура страницы ASP.NET создает экземпляры всех элементов, содержащих атрибут runat="server". Если требуется сослаться в коде на элемент управления как на член, необходимо также назначить атрибут id этому элементу управления.

Структура страниц предоставляет предварительно заданные серверные HTML-элементы управления для HTML-элементов, наиболее часто динамически используемых на странице. Это элемент form, элементы input (текстовое поле, флажок, кнопка "Отправить"), элемент select и т. п. Эти предварительно определенные серверные HTML-элементы управления совместно используют основные свойства универсального элемента управления; кроме того, каждый элемент управления обычно предоставляет свой набор свойств и свое событие.

Серверные HTML-элементы управления имеют следующие функциональные возможности:

  • Объектная модель, которую можно запрограммировать на сервере с помощью обычных методов объектно-ориентированного программирования. Каждый серверный элемент управления обладает свойствами, позволяющими программно управлять его атрибутами разметки в серверном коде.

  • Набор событий, для которых можно писать обработчики в основном так же, как и в клиентской форме, за исключением того, что событие обрабатывается в серверном коде.

  • Возможность обработки событий в клиентском сценарии.

  • Автоматическая поддержка состояния элемента управления. Если страница выполняет круговой путь к серверу, то значения, введенные пользователем в серверные HTML-элементы управления, автоматически учитываются и отправляются обратно в обозреватель.

  • Взаимодействие с проверяющими элементами управления ASP.NET, так что можно проверять сведения, введенные пользователем в элемент управления.

  • Привязка данных к одному или нескольким свойствам элемента управления.

  • Поддержка стилей в случае, когда веб-страница ASP.NET отображается в обозревателе, поддерживающем каскадные таблицы стилей.

  • Передача специализированных атрибутов. В серверные HTML-элементы управления можно добавить любые необходимые атрибуты, которые структура страниц отображает, не изменяя их функциональных возможностей. Это позволяет добавлять в элементы управления атрибуты, предоставленные обозревателем.

Сведения о преобразовании HTML-элемента в серверный HTML-элемент управления см. в разделе Практическое руководство. Добавление серверных HTML-элементов управления на веб-страницу с помощью синтаксиса ASP.NET.

Серверные веб-элементы управления

Серверные веб-элементы управления представляют собой второй набор элементов управления, разработанных с другим акцентом. Они не обязательно полностью соответствуют серверным HTML-элементам управления. Они определены как абстрактные элементы управления, в которых фактическая разметка, воспроизведенная элементом управления, может сильно отличаться от запрограммированной модели. Например, серверный веб-элемент управления RadioButtonList может воспроизводиться как в виде таблицы, так и в виде встроенного текста в другой разметке.

Серверные веб-элементы управления включают как традиционные элементы управления форм, например кнопки и текстовые поля, так и сложные элементы управления, например таблицы. Они также включают элементы управления, предоставляющие часто используемые функциональные возможности форм, такие как представление данных в виде сетки, выбор дат, отображение меню и т. д.

Серверные веб-элементы управления обладают всеми функциональными возможностями, перечисленными выше для серверных HTML-элементов управления (за исключением взаимнооднозначного сопоставления с элементами), а также следующими дополнительными возможностями:

  • Объектная модель с широкими функциональными возможностями, обеспечивающая строго типизированные возможности программирования.

  • Автоматическое обнаружение обозревателя. Элементы управления могут обнаруживать возможности обозревателя и отображать соответствующую разметку.

  • Для некоторых элементов управления имеется возможность определить собственную разметку элемента управления с помощью Templates.

  • Для некоторых элементов управления возможно указать, вызывает ли событие элемента управления немедленную отправку данных на сервер, или оно кэшируется и возникает при отправке страницы.

  • Поддержка тем, позволяющая определить согласованный вид для элементов управления по всему узлу. Дополнительные сведения см. в разделе Темы и обложки ASP.NET.

  • Возможность передавать события из вложенного элемента управления (такого как кнопка в таблице) в контейнерный элемент управления.

Элементы управления используют следующий синтаксис:

<asp:button attributes runat="server" id="Button1" />

В этом случае атрибуты отличаются от атрибутов HTML-элементов. Напротив, здесь они являются свойствами веб-элемента управления.

При запуске веб-страницы ASP.NET серверный веб-элемент управления воспроизводится на странице с помощью соответствующей разметки, которая часто зависит не только от типа обозревателя, но и от параметров, установленных для элемента управления. Например, элемент управления TextBox может отображаются в виде тега input или тега textarea, в зависимости от его свойств.

Подробная информация и справочная документация доступны для каждого элемента управления по отдельности.

См. также

Основные понятия

Общие сведения о серверных веб-элементах управления ASP.NET