Спонсор: Microsoft
Опубликован: 04.02.2009 | Уровень: специалист | Доступ: платный | ВУЗ: Воронежский государственный университет
Самостоятельная работа 9:

Серверные элементы управления ASP.NET

Аннотация: Цель работы - знакомство со средствами автоматизации разработки веб-приложений в ASP.NET в виде серверных элементов управления WebForm.

Важной особенностью ASP.NET является использование серверных элементов управления на веб-странице (элементы WebForm ), которые являются фактически тэгами, понятными веб-серверу. Эти элементы определены в пространстве имен System.Web.UI.WebControls.

Принято выделять три типа серверных элементов управления:

  • Серверные элементы управления HTML – обычные HTML тэги.
  • Элементы управления веб-сервера – новые тэги ASP.NET.
  • Серверные элементы управления для проверки данных (валидации) – применяются для валидации входных данных от клиентского приложения (обычно веб-браузера).
Преимущества от использования таких элементов при разработке веб-приложений:
  • Сокращается количество кода, написанного вручную (что особенно заметно для сложных элементов документа). Элемент просто "перетаскивается" из панели инструментов, после чего выполняется настройка его параметров в специальном окне. При этом все изменения автоматически заносятся непосредственно в *.aspx файл.
  • С программной точки зрения каждому из этих элементов управления соответствует определенный класс в библиотеке базовых классов .NET, что позволяет писать для них такой же код как и для любых других классов.
  • Для любого элемента управления WebForm определен набор событий, обрабатываемых на веб-сервере.
  • Для любого элемента управления WebForm предоставляется возможность для проверки ввода данных пользователем.

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

По умолчанию такие элементы управления в ASP.NET файлах рассматриваются как текст. Для их программирования требуется добавление атрибута runat="server" в соответствующий HTML элемент. Кроме того, все серверные элементы управления HTML должны быть размещены внутри области действия тэга <form>, также имеющего атрибут runat="server".

Серверный элемент управления HTML Описание
HtmlAnchor Управление HTML элементом <a>
HtmlButton Управление HTML элементом <button>
HtmlForm Управление HTML элементом <form>
HtmlGeneric Управляет HTML элементами не описываемыми как элементы управления HTML , например, <body>, <div>, <span> и др.
HtmlImage Управление HTML элементом <image>
HtmlInputButton Управление HTML элементами <input type="button">, <input type="submit"> и <input type="reset">
HtmlInputCheckBox Управление HTML элементом <input type="checkbox">
HtmlInputFile Управление HTML элементом <input type="file">
HtmlInputHidden Управление HTML элементом <input type="hidden">
HtmlInputImage Управление HTML элементом <input type="image">
HtmlInputRadioButton Управление HTML элементом <input type="radio">
HtmlInputText Управление HTML элементами <input type="text"> и <input type="password">
HtmlSelect Управление HTML элементом <select>
HtmlTable Управление HTML элементом <table>
HtmlTableCell Управление HTML элементами <td> и <th>
HtmlTableRow Управление HTML элементом <tr>
HtmlTextArea Управление HTML элементом <textarea>

Элементы управления веб-сервера

Подобно серверным элементам управления HTML элементы данного типа также создаются на веб-сервере и предполагают добавление атрибута runat="server". Однако они могут не соответствовать конкретным элементам HTML, но представлять более сложные элементы.

Общий синтаксис для описания таких элементов:

<asp:тип_элемента id="идентификатор" runat="server"/>

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

Элемент управления веб-сервера Описание
AdRotator Банерная рулетка
Button Отображение кнопки
Calendar Отображение календаря
CalendarDay Элемент выбора дня календаря
CheckBox Отображение флажка
CheckBoxList Группа флажков
DataGrid Отображение полей источника данных
DataList Отображение элементов из источника данных с помощью шаблонов
DropDownList Выпадающий список
HyperLink Гиперссылка
Image Изображение
ImageButton Кнопка в виде изображения
Label Отображение статического содержимого, доступного для программирования, и с возможностью задания стиля
LinkButton Кнопка с гиперссылкой
ListBox Выпадающий список с единичным или множественным выделением
ListItem Элемент списка
Literal Отображение статического содержимого, доступного для программирования, но без возможности задания стиля
Panel Контейнер для других элементов управления
PlaceHolder Место для добавления элементов управления программным способом
RadioButton Радио-кнопка
RadioButtonList Группа радио-кнопок
BulletedList Маркерный список
Repeater Повторяемый список элементов
Style Задание стиля элемента управления
Table Таблица
TableCell Ячейка таблицы
TableRow Строка таблицы
TextBox Поле для ввода текста
Xml Отображение XML файла или результата XSLT преобразования

Серверные элементы управления для проверки данных (валидации)

Элементы управления данного типа применяются для проверки вводимых данных.

Имеют следующий синтаксис:

<asp:тип_элемента id="идентификатор" runat="server" />

Наиболее важные элементы приводятся в следующей таблице.

Элемент управления для проверки данных Описание
CompareValidator Сравнивает значение, введенное в один элемент управления со значением, введенным в другой элемент, либо с фиксированным значением
CustomValidator Позволяет задавать пользовательский метод проверки вводимых значений
RangeValidator Проверяет, что значение, введенное пользователем, находится между двумя величинами
RegularExpressionValidator Проверяет введенное значение на соответствие указанному шаблону
RequiredFieldValidator Проверяет обязательное наличие введенного значения
ValidationSummary Отображает отчет обо всех ошибках проверки значений, произошедших на веб-странице
Михаил Олифиренко
Михаил Олифиренко
Александр Табачук
Александр Табачук

Это только у меня не работает кнопочка "Получить код DreamSpark"? Пишет "временно не доступно..." А когда заработает?

Илья Гончаров
Илья Гончаров
Россия, Воронеж, Воронежский государственный университет, 2004
Андрей Галушко
Андрей Галушко
Украина, Конотоп, КИПТ