Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
веб.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
933.89 Кб
Скачать

3.1 Серверні веб-елементи управління

Всі серверні веб-елементи управління використовуються в наступному вигляді:

<asp:ім’яЕлемента runat="server" атрибут="значення"> Вміст </аsр:ім’яЕлемента>

У цьому коді ім’яЕлемента - це ім'я серверного елемента керування ASP.NET, атрибут="значення"- одна або більше специфікацій атрибутів, а Вміст являє собою вміст елемента, якщо такий є. Деякі елементи управління дозволяють встановлювати властивості, використовуючи атрибути і вміст.

Оскільки синтаксис елементів управління заснований на XML (хоча елементи можуть вбудовуватися і в код, відмінний від XML, такий як HTML), буде помилкою пропускати закриваючий дескриптор /> для порожніх елементів або перекривати елементи.

В серверних веб-елементах управління також присутній атрибут runat="Server". Це настільки ж важливо тут, як і в будь-якому іншому місці, і пропуск цього атрибуту - поширена помилка. Якщо її допустити, Web Forms працювати не буде.

Як і з Windows Forms, тут є повний доступ до властивостей, подій і т.п. у вікні Properties (Властивості), а також постійний відгук в коді або у візуальному конструкторі - де б не відбувалися зміни. Будь-які додані серверні елементи управління автоматично стають частиною об'єктної моделі створюваної форми.

Щоб змусити це додаток що-небудь робити, треба додати обробник подій. Можна або ввести ім'я методу у вікні властивостей елементу, або просто двічі клацнути по елементу, щоб отримати обробник події за замовчуванням. Наприклад, подвійне клацання по кнопці автоматично додає метод-обробник події наступного вигляду:

protected void triggerButton_Click (object sender, EventArgs e) { }

Стандартні серверні веб-елементи управління

Майже всі серверні веб-елементи управління (в категорії Standard і інших категоріях) успадковані від класу System.Web.UI.WebControls. WebControl, який, у свою чергу, успадковується від System.Web.UI.Control. Ті, що не використовують цього успадкування, походять безпосередньо від Control або від більш спеціалізованого базового класу, який в кінцевому підсумку успадкований від Control. В результаті серверні веб-елементи управління мають багато спільних властивостей і подій, якими можна при необхідності користуватися. Деякі елементи можуть містити в собі інші елементи управління, утворюючи ієрархію елементів управління на сторінці. Для доступу до елементів, що містяться усередині заданого елемента, можна скористатися його властивістю Controls або звернутися до елементу-контейнеру через властивість Parent.

У табл. 5.1 описані стандартні серверні веб-елементи управління.

Елемент управління

Опис

Label

Призначений для відображення простого тексту; використовуйте властивість Text для встановлення і програмної модифікації відображуваного тексту.

TextBox

Представляє текстове поле, у якому користувач може редагувати текст. Використовуйте властивість Text для доступу до даних, що вводяться, і подію Textchanged для виконання дій по обробці змін при зворотній відправці. Якщо потрібна автоматична зворотна відправка (на противагу використанню кнопки), встановіть властивість AutoPostBack в true.

Button

Додає стандартну кнопку, на якій може клацати користувач. Використовуйте властивість Text для доступу до тексту на кнопці і подію Click для реагування на події (зворотна відправка на сервер є автоматичною). Можна також застосовувати подія Command для реагування на клацання, що забезпечить доступ до додаткових властивостей CommandName та CommandArgument.

LinkButton

Ідентичний Button, але відображає кнопку як гіперпосилання.

ImageButton

Відображає зображення, що виглядає як кнопка, що натискається. Властивості та події успадковані від Button і Image.

HyperLink

Додає гіперпосилання HTML. Призначення посилання встановлюється у властивості NavigateUtl, а текст для відображення - у властивості Text. Можна також використовувати ImageUrl для вказівки зображення для посилання і Target, щоб задати цільове вікно браузера. Цей елемент керування не має нестандартних подій, тому якщо потрібна додаткова обробка при слідуванні по посиланню, необхідно застосовувати елемент LinkButon.

DynamicHyperLink

Використовується для візуалізації гіперпосилання HTML на зумовлене місце розташування всередині веб-сайту з динамічним вмістом.

DropDownList

Дозволяє користувачеві вибирати один елемент зі списку, або вибираючи його безпосередньо зі списку, або вводячи першу букву або дві. Використовуйте властивість items для встановлення списку елементів (це клас ListltemCollection, що містить об'єкти Listltem) і властивості Selectedltem і Selectedlndex для визначення того, що вибрано. Подія SelectedlndexChanged може застосовуватися для визначення зміни вибору, і цей елемент керування також має властивість AutoPostBack, так що зміна вибору ініціює операцію зворотної відправки.

ListBox

Дозволяє користувачеві вибирати один або більше елементів у списку. Встановлення властивості SelectionMode в Multiple або Single вказує можливість вибору одного або більше елементів одночасно, а властивість Rows визначає кількість елементів для  відображення. Інші властивості та події - такі ж, що і в DropDownList.

CheckBox

Відображає прапорець, який може бути відзначений. Стан

зберігається в булівській властивості Checked, а текст, асоційований з прапорцем - у властивості Text. Властивість AutoPostBack може використовуватися для ініціалізації автоматичної зворотної відправки, а властивість CheckedChanged - для реалізації дій при змінах.

CheckBoxList

Створює групу прапорців. Властивості та події ідентичні іншим обліковим елементам управління, таким як DropDownList.

RadioButton

Відображає перемикач, який може бути включений або відключений. Зазвичай перемикачі об'єднуються в групи, так що тільки в кожен момент часу активним є лише один з них. Використовуйте властивість GroupName для об'єднання елементів управління RadioButton в групу. Інші властивості та події - такі ж, як у CheckBox.

RadioButtonList

Створює групу перемикачів, з яких у кожен момент часу може бути вибраний тільки один. Властивості та події - такі ж, як в інших списочних елементах управління, на зразок DropDownList.

Image

Показує графічне зображення. Використовуйте imageUrl для посилання на зображення, a AlternateText для представлення тексту, якщо неможливо завантажити зображення.

ІmageMap

Подібний image, але дозволяє вказати певні дії на випадок, якщо користувач клацне на одній або більше "гарячих точок" на зображенні. Дією, яка має бути виконана, може бути або зворотна відправка, або перенаправлення на інший URL "Гарячі точки" застосовуються вбудованими елементами управління, успадкованими від HotSpot, такими як RectangleHotSpot і CircleHotSpot.

Table

Представляє таблицю. Використовуйте цей елемент з TableRow і TableCell під час проектування або програмно привласнюйте рядки через властивість Rows типу TableRowCollection. Цю властивість можна також використовувати для модифікацій під час виконання. Елемент керування Table має кілька властивостей стилізації, унікальних для таблиць.

BulletedList

Форматує набір елементів у вигляді списку з позначками. На відміну від інших облікових елементів управління, BulietedList підтримує подію Click, яку можна використовувати для визначення елемента, де було здійснене клацання користувачем під час зворотної відправки. Інші властивості і події - ті ж, що і у DropDownList.

HiddenField

Використовується для створення прихованого поля, що зберігає не відображувані значення, які необхідні по тій або іншій причині. Це може дуже придатися для зберігання налаштувань, які в іншому випадку зажадали б альтернативних механізмів зберігання. Для доступу до значень, що зберігаються, служить властивість Value.

Literal

Виконує ті ж функції, що і Label, але не має властивостей стилізації, тому що успадковується від Control, а неWebControl. У властивості Text задається текст для відображення цим елементом управління.

Calendar

Дозволяє користувачеві вибирати дату з відображуваного

графічного календаря. Цей елемент керування має безліч властивостей, пов'язаних зі стилями, але найважливіша функціональність доступна через властивості SelectedDate і VisibleDate (типу System.DateTime), за допомогою яких виходить дата, обрана користувачем, і відображуваний місяць для відображення (який завжди буде містити visibleData). Ключова подія, яку тут потрібно обробляти - це SelectionChanged. Зворотня відправка з цього елемента управління здійснюється автоматично.

AdRotator

Показує кілька зображень послідовно, змінюючи їх після кожного обміну з сервером. Використовуйте властивість AdvertisementFile для специфікації файлу XML, що описує можливі зображення, і подія AdCreated для виконання обробки перед кожною зворотною відправкою зображення. За допомогою властивості Target можна вказувати ім'я вікна, яке повинно відкриватися по клацанню на зображенні.

FileUpload

Цей елемент управління надає користувачеві текстове поле і кнопку Browse (Огляд) для вибору файлу, що завантажується. За допомогою властивості HasFile можна визначити, чи був вибраний файл, і потім викликати метод SaveAs() з відділеного коду для виконання власне завантаження.

Wizard

Розширений елемент управління типу майстра, який полегшує рішення розповсюдженого завдання - послідовне надання набору сторінок для введення користувацьких даних. До майстру можна додавати кроки, які представляються користувачеві послідовно або непослідовно, і покладатися на цей елемент керування в підтримці стану і т.п.

Xml

Більш складний елемент керування для відображення тексту, використовуваний для виведення XML-вмісту, який може бути трансформовано із застосуванням таблиці стилів XSLT. Вміст XML встановлюється за допомогою однієї з властивостей Document, DocumentConent або DocumentSource (залежно від формату вихідного XML) і (додаткової) таблиці стилів XSLT у властивості Transform або TransformSource.

MultiView

Елемент керування, який містить в собі один або більше елементів view, причому тільки один view візуалізується в одиницю часу. Поточне відображуване відображення задається за допомогою ActiveViewIndex, і можна виявляти його за подією ActiveViewChanged.

Panel

Додає контейнер для інших елементів управління. Для опису організації вмісту можна використовувати HorizontalAlign і Wrap.

PlaceHolder

Цей елемент управління не візуалізує ніякого висновку, але може придатися для групування інших елементів управління разом або для додавання елементів програмно в задане місце розташування. Елементи, що містяться тут,  можуть бути доступні через властивість Controls.

View

Контейнер для елементів управління, багато в чому подібний PlaceHolder, але призначений для використання в якості дочірнього елемента MultiView. Для того щоб дізнатися, чи відображається певний елемент View, служить властивість Visible. За допомогою подій Activate і Deactivate можна виявляти зміни в стані активізації.

Substitution

Вказує розділ веб-сторінки, яка не кешується разом з іншим виводом.

Localize

У точності схожий на елемент Literal, але підтримує локалізацію тексту з використанням ресурсів проекту для вказівки тексту, який повинен відображатися для різних локалей.

 

Серверні веб-елементи управління даними.

Серверні веб-елементи управління, що працюють з даними, діляться на три типи.

        Елементи керування джерелами даних - SqlDataSource, AccessDataSource, LinqDataSource, EntityDataSource, ObjectDataSource, XmlDataSource і SiteMapDataSource.

        Елементи керування відображенням даних - GridView, DataList, DetailsView, FormView, ListView, Repeater і DataPager.

        Елементи керування динамічними даними - DynamicControl і DynamicDataManager.

Зазвичай на сторінці розміщують один із (невізуальних) елементів управління джерелами даних, щоб зв'язатися з джерелом даних, а потім додають елементи управління відображенням даних, які прив'язуються до елементів управління джерелами для візуалізації даних. Деякі з найбільш розвинених елементів відображення даних, на зразок GridView, також дозволяють редагувати дані.

Всі елементи управління джерелами даних наслідуються або від System.Web.UI. DataSource, або від System.Web.UI.HierarchicalDataSource. Ці класи пропонують такі методи, як GetView() або GetHierarchicalView() для забезпечення доступу до внутрішніх представлень даних і засобів обгорток.

 

 

 

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]