Weiterhin existieren in ASP.NET zwei Typen von Serversteuerelementen:
HTML-Serversteuerelemente und Webserversteuerelemente.
Webserversteuerelemente
sind die mächtigste Form der Serversteuerelemente. Ein Webserversteuerelement
erkennt man an dem Namensraum asp, der vor dem Tag-Namen steht.
<asp:Label
runat=Server id="Label1">Bitte URL eingeben:</asp:Label>
<asp:TextBox id="Textbox1"
runat="server">HTTP://...</asp:TextBox>
<asp:Button id="Button1" runat="server"
Text="OK"></asp:Button>
HTML-Serversteuerelemente sind eine konzeptionelle Mischung aus den rein clientseitigen Standard-HTML-Elementen
und den Webserversteuerelementen. Das Tag für ein HTML-Serversteuerelement entspricht
einem normalen HTML-Tag, nur mit dem Zusatzattribut runat="server". Diese Steuerelemente
besitzen eine serverseitige Ereignisbehandlung und können wie
Webserversteuerelemente objektorientiert verändert werden. Sie erlauben auch
die Datenbindung.

Abbildung 4.8 Steuerelement-Typen in ASP.NET
Es besteht eine 1:1-Abbildung zwischen
HTML-Serversteuerelementen und HTML-Tags: Bei der Umsetzung der Seite erzeugt
ASP.NET aus jedem HTML-Serversteuerelement genau ein Tag. Dazu ein Beispiel:
<P
id="HSC_Text" runat="server">Bitte URL
eingeben:</P>
<INPUT type="text" id="HSC_Feld"
name="HSC_Feld" runat="server" value="HTTP://...">
<INPUT type="button" value="OK"
name="HSC_Button" id="HSC_Button"
runat="server">
HTML-Serversteuerelemente
unterliegen gegenüber Webserversteuerelementen folgenden Einschränkungen:
- Sie bieten keine Abstraktion vom Ausgabeformat. Ein
HTML-Serversteuerelement wird immer auch als HTML-Tag ausgegeben. Es gibt kein
Adaptive Rendering, also keine browserspezifische Ausgabe.
- Sie bieten keine Ereignisweiterleitung an übergeordnete
Serversteuerelemente.
- Die Eingabefelder bieten keine Möglichkeit zum direkten Postback
(kein AutoPostBack-Attribut).
Lediglich Schaltflächen und (manche) Hyperlinks lösen einen Postback aus.
HTML-Serversteuerelemente bieten aber auch drei Vorteile
gegenüber Webserversteuerelementen:
- Die Migration von klassischem ASP- oder HTML-Code ist einfacher
durch die 1:1-Abbildung zwischen HTML-Tag und HTML-Serversteuerelement. Visual
Studio .NET unterstützt die Migration durch eine Konvertierungsfunktion im
Webform-Designer (Kontextmenüeintrag Als Serversteuerung
ausführen).
-
Die Hinterlegung clientseitiger Skripte ist einfacher, weil es
keine Umwandlung des Quellcode-Tags auf der Serverseite gibt.
-
Es gibt einige HTML-Tags, die nur durch ein
HTML-Serversteuerelement abgebildet werden können, weil es dafür (noch) kein
Webserversteuerelement gibt.
Komponentenart
|
Basisklasse für HTML-Anwendungen
|
Basisklasse für WML- und cHTML-Anwendungen
|
Webserversteuer-elemente
|
System.Web.UI.WebControls.WebControl
|
System.Mobile.UI.MobileControl
|
HTML-Serversteuerelemente
|
System.Web.UI.HtmlControls.HtmlControl
|
---
|
Webbenutzer-Steuerelemente
|
System.Web.UI.UserControl
|
System.Web.UI.MobileControls.MobileUserControl
|
Tabelle 4.2 Basisklassen für die ASP.NET-Steuerelement-Typen
Inhalt dieses Kapitels:
<< Übersetzungsvorgang und Verbreitung
Bestandteile eines Webprojekts >>