Серверні елементи більш потужні, оскільки вони прив’язані не до розмітки, а до функціональності, яку потрібно забезпечити. Багато з цих елементів не мають аналогів в HTML, наприклад, календар. Їх вивід на сторінку повністю контролює ASP.NET. Перехоплюючи події PreRender, Init, Load, можно втручуватися у цей процес.
Оголошення серверного елемента управління починається з блоку <asp:тип> і завершується </asp:тип>.
Наприклад:
<asp:Label ID="Label1" runat="server" Text="Hello World"></asp:Label>
Можна також закрити оголошення тегом />, якщо всередині блоку нема тексту:
<asp:Label ID="Label1" runat="server" Text="Hello World" />
Властивості цих елементів строго типізовані (на відміну від HTML-елементів).
У таблиці 8.3 перелічені елементи управління, які мають пару серед тегів HTML. Насправді їх значно більше. Деякі елементи генерують не лише HTML-код, але й JavaScript. В ASP.NET 2.0 було додано багато нових складних елементів управління, наприклад, MultiView, TreeView, Wizard, GridView.
Таблиця 8.3. Відповідність деяких серверних елементів управління web тегам HTML
Елемент управління ASP.NET
| Відповідний тег HTML
| Призначення
|
<asp:Label>
| <Span>
| Відобразити текст
|
<asp:ListBox>
| <Select>
| Список вибору
|
<asp:DropDownList>
| <Select>
| Випадний список
|
<asp:TextBox>
| <Input Type="Text"> <Input Type="Password"> <Textarea>
| Рядок редагування Поле редагування
|
<asp: HiddenField>
| <Input Type="Hidden">
| Невидиме поле
|
<asp:RadioButton>,
<asp:RadioButtonList>
| <Input Type="Radio">
| Перемикач, список перемикачів
|
<asp:CheckBox>,
<asp:CheckBoxList>
| <Input Type="CheckBox">
| Прапорець, список прапорців
|
<asp:Button>
| <Input Type="button">
<Input Type="submit">
| Командна кнопка
|
<asp:Image>
| <img>
| Зображення
|
<asp:ImageButton>
| <input type="image">
| Кнопка-зображення
|
<asp: Table>
| <Table>
| Таблиця
|
<asp:Panel>
| <Div>
| Контейнер
|
<asp:BulletedList>
| <ul>,<ol>
| Маркований список
|
<asp:HyperLink>
| <A Href>
| Гіперпосилання
|
Сервер не обов’язково генерує ті ж самі теги HTML для серверних елементів управління. Все залежить від типу браузера, який використовує клієнт.
Всі серверні елементи управління розміщені у просторі імен System.Web.UI.Control. Всі візуальні серверні елементи управління наслідуються від класу System.Web.UI.WebControls.WebControl.
Окрім перелічених, існує велика кількість інших серверних елементів, призначених для
- перевірки даних
- верифікації введених даних
- роботи з джерелами і споживачами даних
- навігації по сайту
- роботи з логінами та паролями.
Також можна утворювати нові користувацькі елементи управління.