Упражнение 1 - Въведение в ASP.NET страниците.
Задача
-
Създайте нова уеб страница, чрез File -> New -> Web Site (C# language). Изпълнете следните стъпки и промени:
- Разгледайте началния HTML код, който е генериран.
- Задайте име на уеб страницата.
- Сменете фона на страницата.
- В режим Design добавете един под друг label и бутон към страницата.
- Позиционирайте обектите в средата на страницата.
- Добавете код за управление на страницата чрез натискане на бутона.
- Създайте OnClick метод на бутона с DoubleClick върху него.
- В метода задайте промяна на текста в label-а.
- Добавете TextBox към страницата.
- Модифицирайте кода на OnClick метода, така че при натискането му да се извежда текст във вида „Здравей, <въведеното име>!”.
- Добавете нова страница (Add New Item...). Махнете отметката на "Place code in separate file".
- В новата станица добавете таблица, контрол за изобразяване на изображение и един бутон.
- Добавете код, необходим, за да реализирате смяна на изображението при натискане върху него.
- Добавете връзки между двете страници.
Малко информация:
Компоненти на ASP.NET
Web Forms – доставят интерфейса за ASP.NET приложение.
Code-behind – асоциират се с уеб форми и съдържат server-side код.
Web.config – файл, съдържащ конфигурацията на ASP.NET приложението.
Machine.config – файл с глобални настройки за уеб сървъра.
Global.asax – файл, съдържащ код за прихващане на application-level събития.
Категории Web server контроли.
Web сървър контролите се делят на:
- Вътрешни контроли (Intrinsic controls) - съответстват на простите HTML елементи като бутони или списъци. Използват се по същия начин като HTML server контролите.
- Контроли за валидация (Validation controls) включват логика, която позволява тестването на потребителски въведени данни по унифициран начин. За да се провери входът (като данни) на потребителя, контролата за валидация се прикрепя към контролата, която приема входни данни от потребителя и се описват правилата, по които се определя дали входните данни са валидни.
- Обогатени контроли (Rich controls) са сложни контроли, които включват множество функции. Пример е AdRotator контролата, която се използва за показване на последователност от картинки (използва се за банери) или Calendar контролата, която представлява календар.
- List-bound контролите могат динамично да показват данни на ASP.NET уеб страница. Дават възможността за показване, форматиране на изхода, сортиране и промяна.
- Internet Explorer уеб контролите са група сложни контроли, например MultiPage, TabStrip, Toolbar, and TreeView контролите, които могат да бъдат свалени от Интернет и да се интегрират във Visual Studio .NET за използване във всяко ASP.NET уеб приложение. Тези контроли могат да бъдат изобразени като стандартен HTML, но могат да се възползват и от допълнителните възможности на Internet Explorer 5.5 или следващи версии, при което имат по-богата функционалност.
Прихващане на събития
Когато потребител взаимодейства (щрака, избира, въвежда данни) с уеб форма, се генерира събитие (event). Действието, което се извършва в отговор на това взаимодействие, се нарича event процедура.
AutoEventWireup
Указва дали събитията автоматично да връзват към страницата.
Ако производителността е на първо място, се препоръчва да не се използва автоматично връзване
Жизнен цикъл на страницата.
При всяка заявка за ASP.NET страница серия от събития се случват в една и съща последователност, наречена page event life cycle.
- Page_Init – Това събитие инициализира страницата, като инициализира Web server контролите. Извиква се преди Page_Load. По време на това събитие не трябва да се осъществява достъп до контролите. Може да се използва за заделяне на ресурси.
- Page_Load – Извиква се всеки път, когато тази страница се поиска от клиент - например при отваряне на страницата или при натискане на бутон в нея. Извиква се след Page_Init. Събитието се използва за извличане на данните, попълнени в контролите, както и за промяна на състоянието на контролите в страницата.
- Събития на контролите – Всички методи от code-behind страницата, които са свързани с контроли от страницата (Button1_Click, TextBox1_Changed). Извикват се след Page_Load.
- Page_Unload – Извиква се при приключване на рендирането (render) на страницата. Рендирането на страницата е процесът на създаване на изходния HTML код от .aspx страницата и контролите в нея, както и данните, получени от потребителя до момента. Използва се за освобождаване на ресурси.
Page.IsPostBack
В ASP.NET предназначението на формите е да връщат информация обратно към сървъра за обработка. Процесът се нарича "postback". Със свойството Page.IsPostBack може да се провери дали страница се зарежда за първи път – и така да се изпълни инициализационен код, и ако не е за първи път, да се изпълни код, който отговаря на събитието, предизвикало връщането на страницата.
Page.IsPostBack е false, ако страницата се поисква за първи път.
Page.IsPostBack е true, ако заявката е предизвикана от контрола на страницата.
Върни се в началото
Designed by инж. Антония Ташева