Преглед на ASP.NET Server Controls

Преди да преминете към ASP.Net Server Controls, нека да преразгледаме какви са контролите. Контролите са малки блокове от кодове, които могат да се използват на уеб страница за изпълнение на задачата, за която са предназначени. Например, искате потребителят да въведе парола, използвайте Password Control. Предлага се предварително опакован със собствени стилове и валидации.

По подобен начин, ASP.Net Server Controls са контроли, които се изпълняват на сървъра. Те са просто подобни на HTML тагове, които се разбират от сървъра. Веднага щом сървърът срещне някой такъв маркер, той знае какво да покаже, как да се показва и какви дейности и събития да задейства. Разбира се, като програмист, можете да презапишете стила по подразбиране, събития и действия.

Характеристики на ASP.NET Server Controls

  • Автоматично управление на състоянието - Стойностите на контролите се запазват при двупосочни пътувания до сървъра.
  • Прост достъп до стойност на обекта - Достъпът до стойността на обекта е доста прост чрез контроли, а не от конвенционалния метод за използване на обект за заявка.
  • Събития - Контролите реагират на събития в кода от страна на сървъра, което помага при обработката на конкретни действия на потребителя по структуриран начин.
  • Сложна опростена - Сложните потребителски интерфейси се създават с прости контроли, които са предварително конфигурирани за извършване на най-често срещаните действия.
  • Write Once Render Anywhere - уеб страниците, създадени чрез контроли, са оптимизирани за изобразяване на всякакъв тип устройство или браузър. Оформлението и надценката в изхода се създават автоматично въз основа на възможностите на браузъра.

Категории на ASP.NET сървърни контроли

Рамката на страницата ASP.Net има поддръжка за множество контроли. ASP.NET сървърните контроли са категоризирани в 4 категории:

1. Контроли на HTML сървъра

Контролите на HTML сървъра са HTML атрибути, които са инструктирани да бъдат обработени от страна на сървъра. Това по същество означава, че контролът има същия изход и свойства като техните съответни традиционни HTML атрибути, но с допълнителни възможности за изчисляване на събития, които ще се обработват от страна на сървъра.

За да обобщим, традиционните HTML тагове, подобрени за обработка от страна на сървъра, се наричат ​​HTML контроли на сървъра.

Пример за управление на HTML сървър

Традиционен HTML маркер

Контрол на HTML сървъра

Сега може би се чудите как атрибут runat = „server“ може да трансформира традиционния HTML таг в HTML Server Control? Е, ASP.Net третира всички HTML елементи като обикновен текст. Атрибутът run at показва, че елементът трябва да се третира като контрол, като по този начин го прави програмируем на сървъра. Елементите с този атрибут са достъпни и от скриптове от страна на сървъра.

Когато ASP.Net кодът се компилира, елементите с атрибут runat = “server” също се компилират в сглобката. И за тези елементи, които нямат този атрибут, те се добавят към сглобката като общи HTML контроли.

Забележка - Всички HTML сървърни контроли трябва да бъдат затворени в… тагове.

Предимства на контролите на HTML сървъра

Контролите на HTML сървъра осигуряват следните предимства:

  • Контролите картографират едно към едно със съответните им HTML маркери.
  • Повечето контроли имат задействане на събитие OnServer за най-често срещаното събитие на контрола. Например, бутоните имат OnServerClick Програмистът просто трябва да напише кода си във функциите на спусъка.
  • Всички HTML сървърни контроли произлизат от базовия клас Web.UI.HtmlControl. По този начин те наследяват всички основни функции и методи за HTML контрол.
  • Маркирането на контролите е подобно на естествените HTML маркери, като по този начин ги прави лесни за използване и разбиране.
  • Контролите са групирани в Visual Studio Toolbox, което ги прави лесни за използване във вашето приложение.

2. Управление на уеб сървъра

Контролите на уеб сървъра са подобни на HTML Server Controls по отношение на генерирания резултат. Контролите на уеб сървъра обаче са стандартизирани ASP маркери. Те също са компилирани от страната на сървъра и изискват подобен атрибут runat = „server“.

Пример за управление на уеб сървъра

Управление на уеб сървъра

HTML Server Control

Забележка - Не всички уеб контроли задължително се свързват към съответния HTML контрол. Понякога уеб контролите са по-сложни от родните HTML контроли.

Предимства на контролите на уеб сървъра

Контролите на уеб сървъра осигуряват следните предимства:

  • Контролите картографират (предимно, но не винаги) на съответните им HTML елементи. Това улеснява разработчиците автоматично да генерират потребителски интерфейс.
  • Тъй като контролите са предварително опаковани с интерактивни HTML елементи, процесът на създаване на уеб форми става по-малко податлив на грешки и е по-последователен.
  • Всички контроли на уеб сървъра произлизат от базовия клас Web.UI.WebControls.WebControl. По този начин те наследяват всички основни функции и методи за уеб контрол.
Контролите на уеб сървъра са разделени в четири категории:
  • Основни уеб контроли
  • Валидиращи контроли
  • Списък на контролите
  • Богат контрол

а. Основни уеб контроли

Основните уеб контроли са тези, подобни на HTML Server Controls. Те предоставят същата функционалност с допълнителни методи, събития и свойства, които разработчиците могат да използват, за да напишат свой собствен код.

Примери за основни уеб контроли

Управление на бутони

HyperLink Control
Label Control

б. Валидиращи контроли

Валидиращите контроли в ASP.Net се използват за валидиране на входовете от потребителя. Тези контроли могат да изпълняват предварително дефинирани, както и персонализирани проверки. В зависимост от съвместимостта на браузъра, валидирането се извършва или от страна на клиента, или от страна на сървъра. Това решение се извършва автоматично от контролите. Удостоверяването от страна на клиента се извършва в клиентския браузър, т.е. преди да се задейства повикване обратно изпращане към сървъра. Валидирането от страна на сървъра се извършва след като формулярът бъде изпратен на сървъра.

Валидиращите контроли не са самостоятелни контроли. По-скоро те са свързани с други контроли в уеб страницата или уеб формата. Повече от един контрол за валидиране може да бъде свързан с всяка контрола, която да бъде валидирана. Валидирането се извършва, когато потребителят изпрати страницата или формата.

Примери за валидиращи контроли

Необходим валидатор на полето

Compare Validator

° С. Списък на контролите

List Controls са специални контроли, които генерират предварително форматирани оформления на списъка. Тези контроли се свързват към колекциите и показват събраните данни на редове в персонализиран или шаблонен формат. По тази причина контролите на списъка се свързват само към колекции, които прилагат IEnumerable, ICollection или IListSource интерфейси. Данните, които ще бъдат обвързани със списъчните контроли, се определят от свойствата DataSource и DataMember.

пример

Public void Page_Load()( count_rptr.DataSource = new String() ("Uno", "Due", "Tre"); count_rptr.DataBind();)

Горният код ще изведе Uno, Due, Tre като списък, обхващащ три реда.

д. Богат контрол

Rich Web Controls са сложни HTML контроли, които имат за цел да осигурят богато потребителско изживяване. Това са специфични за контрола задачи. За разлика от елементарните HTML контроли на уеб формата, Rich Controls изпълнява сложна задача. Това може да бъде тъкан пакет от няколко прости HTML контроли или по-подобрено оформление. Примери за богати контроли са контрол на календара, XML контрол, контрол на AdRotator и т.н.

Календарният контрол е отговорен за показването на елемент за избор на дата, който потребителят може много удобно да използва за избор на дата.

XML Control генерира XML оформление за дадените данни. XML оформлението е оформление, контролирано от маркери, в което данните са затворени в таговете. Тези тагове служат като ключове, докато данните в тях служат като стойности.

Контролът на AdRotator е отговорен за показването на рекламен банер на уеб страницата.

3. Потребителски контроли

ASP.Net също така улеснява програмиста да създаде свой собствен пакет от вградени контроли, които могат да бъдат използвани повторно. Това значително помага на разработчиците, когато искат да използват повторно интерфейса на текущата уеб страница в друга. ASP.Net ни позволява да конвертираме нашите WebForms в потребителски контроли. За да постигне това, ASP.Net записва Web Forms с разширение .ascx. Тези .ascx файлове могат да се използват многократно в рамките на един уеб формуляр.

Стъпки за създаване на собствен потребителски контрол:

  1. Премахнете всички,, и
  2. Променете директивата @Page на @Control
  3. (Незадължително) Включете атрибут className с директивата @Control, за да напишете силно вашата директива с класа.
  4. Запишете контрола с .ascx

4. Персонализирани контроли

В допълнение към обширния набор от вградени контроли, ASP.Net ви позволява също да определите свой собствен персонализиран контрол. Персонализираният контрол е едно от трите:

  • Комбинация от две или повече вградени контроли.
  • Разширение до вградено управление.
  • Напълно нов код, който функционира като специфичен елемент за управление.

Препоръчителни статии

Това е ръководство за ASP.NET Server Controls. Тук обсъждаме функциите и различните категории на ASP.NET Server Controls, заедно с предимствата и примерите. Можете също да разгледате следните статии, за да научите повече -

  1. ASP.NET Framework
  2. ASP.Net валидиращи контроли
  3. Кариера в ASP.NET
  4. Какво е ASP.Net Web Services?