Навігація
Головна
 
Головна arrow Інформатика arrow Проектування і розробка web-додатків
< Попередня   ЗМІСТ   Наступна >

ПОДІЇ КЛАСУ PAGE

При обробці кожного запиту до web-формі (файлу * .aspx) створюється об'єкт класу, який їй відповідає, і виконується робота з ним. В результаті роботи з об'єктом Раді формується HTML-документ відповіді і об'єкт знищується. Такий процес створення, обробки і знищення об'єкта, похідного від класу Page, називається життєвий циклом web-форми (рис. 4.6).

Життєвий цикл web-форми

Мал. 4.6. Життєвий цикл web-форми

В ході життєвого циклу web-форми ініціюються події, для яких користувач може створювати обробники. Спочатку, при створенні об'єкта класу Раді, виникає подія Page lnit. У обробнику цієї події можна записати код, який виконує початкову ініціалізацію сторінки. Однак дана подія не можна використовувати для ініціалізації елементів управління, розміщених на формі, г. к. Вони ще не створені.

Після цього ініціюється подія Page_Load. Більшість web- форм використовують цю подію для заповнення полів даними і завдання початкових властивостей елементів управління. У процедурі обробки даної події можна визначити, чи була дана форма викликана вперше або звернення до неї виконується повторно в результаті зворотного відправлення (postback), що сталася при натисканні користувачем кнопки або іншого елемента управління, розміщеного на сторінці. Для цього потрібно перевірити властивість IsPostBack об'єкта Раді, яке буде мати значення false при першому виклику даної сторінки і true - при зворотних відправленнях. Завдання початкових значень елементів web- форми виконується тільки при першому виклику форми. При наступних викликах сторінки в результаті зворотного відправлення значення ЕУ задаються автоматично на основі даних з прихованого ЕУ VIEWSTATE, що містить сериализацию всіх значень ЕУ.

Після виклику події Page_Load відбувається перевірка достовірності сторінки. Необхідність такої перевірки виникає тоді, коли користувач ввів в елементи управління розташовані на сторінці дані, які згодом необхідно зберегти або використовувати для обробки.

Наступним кроком обробки web-форми є обробка всіх подій, пов'язаних з серверними елементами управління, які були викликані діями користувача при роботі з web-формою в браузері. На основі порівняння вихідних значень ЕУ (VIEWSTATEhx) і нових значень, переданих в HTTP-запиті, ініціюються події для серверних ЕУ, розміщених на сторінці. Для них в програмному коді web-форми також можуть створюватися обробники подій.

Наприклад, якщо в wcb-формі є кнопка Button і текстове поле TextBox (зі значенням властивості AutoPostBack, рівним false, яке задається за замовчуванням), при зміні тексту в текстовому полі і натисканні кнопки ініціюється зворотна відправка даних сторінки на сервер. У момент обробки даної форми середовищем виконання ініціюють такі події:

  • 1. Page.lnit
  • 2. Page.Load
  • 3. TextBox.TextChanged
  • 4. Button.Click
  • 5. Page.PreRender
  • 6. Page.Unload

Подія PreRender ініціюється після того, як сервер обробив всі події сторінки, але генерація її HTML-коду ще не відбулася. Зазвичай ця подія використовується ASP.Net для зв'язування елементів управління з джерелом даних безпосередньо перед створенням HTML-коду і відправкою його клієнту. Після цього буде формуватися HTML-код, який відправляється браузеру користувача.

Обробка запиту закінчується звільненням всіх ресурсів, зайнятих даної web-формою (етап "Очищення"), при цьому ініціюється подія Page_Unload.

 
Якщо Ви помітили помилку в тексті позначте слово та натисніть Shift + Enter
< Попередня   ЗМІСТ   Наступна >
 
Дисципліни
Агропромисловість
Аудит та Бухоблік
Банківська справа
БЖД
Географія
Документознавство
Екологія
Економіка
Етика та Естетика
Журналістика
Інвестування
Інформатика
Історія
Культурологія
Література
Логіка
Логістика
Маркетинг
Медицина
Нерухомість
Менеджмент
Педагогіка
Політологія
Політекономія
Право
Природознавство
Психологія
Релігієзнавство
Риторика
Соціологія
Статистика
Техніка
Страхова справа
Товарознавство
Туризм
Філософія
Фінанси
Пошук