Übersicht über ASP.NET-Webserversteuerelemente

Aktualisiert: November 2007

Beim Erstellen von ASP.NET-Webseiten können Sie die folgenden Steuerelementtypen verwenden:

  • HTML-Serversteuerelemente   HTML-Elemente, die dem Server verfügbar gemacht werden, sodass Sie sie programmieren können. HTML-Serversteuerelemente machen ein Objektmodell verfügbar, das den HTML-Elementen, die sie rendern, nahezu entspricht.

  • Webserversteuerelemente   Steuerelemente, die mehr integrierte Funktionen aufweisen als HTML-Serversteuerelemente. Webserversteuerelemente umfassen nicht nur Formularsteuerelemente wie Schaltflächen und Textfelder, sondern auch Steuerelemente für spezielle Zwecke, z. B. einen Kalender, Menüs und ein Strukturansicht-Steuerelement. Webserversteuerelemente sind insofern abstrakter als HTML-Serversteuerelemente, als ihr Objektmodell nicht unbedingt die HTML-Syntax wiedergibt.

  • Validierungssteuerelemente   Steuerelemente, die Logik enthalten, mit der Sie Benutzereingaben in Eingabesteuerelementen wie dem TextBox-Steuerelement überprüfen können. Mit Validierungssteuerelementen können Sie die Eingabe auf ein Pflichtfeld, einen bestimmten Wert, ein bestimmtes Zeichenmuster, einen bestimmten Wertebereich usw. überprüfen. Weitere Informationen finden Sie unter ASP.NET-Validierungssteuerelemente.

  • Benutzersteuerelemente   Steuerelemente, die Sie als ASP.NET-Webseiten erstellen. Sie können ASP.NET-Benutzersteuerelemente in andere ASP.NET-Webseiten einbetten, sodass Sie auf einfache Weise Symbolleisten und andere wiederverwendbare Elemente erstellen können. Weitere Informationen finden Sie unter ASP.NET-Benutzersteuerelemente.

    Hinweis:

    Sie können auch eine Ausgabe für mobile Geräte erstellen. Dazu verwenden Sie das gleiche ASP.NET-Seitenframework, erstellen aber anstelle von ASP.NET-Webseiten Mobile ASP.NET-Webseiten und verwenden Steuerelemente, die speziell für mobile Geräte entwickelt wurden. Weitere Informationen finden Sie unter Erstellen von ASP.NET Mobile-Webseiten.

Sie können alle Typen von Steuerelementen auf derselben Seite verwenden. Die folgenden Abschnitte enthalten weitere Informationen über ASP.NET-Serversteuerelemente.

Hinweis:

In einigen Fällen ist für das ordnungsgemäße Funktionieren von Serversteuerelementen Skriptcode auf dem Client erforderlich. Wenn ein Benutzer im Browser die Skripterstellung deaktiviert hat, funktionieren die Steuerelemente möglicherweise nicht wie beabsichtigt. Ausführliche Informationen finden Sie unter ASP.NET-Webserversteuerelemente und Browserfunktionen.

HTML-Serversteuerelemente

HTML-Serversteuerelemente sind HTML-Elemente (oder Elemente in anderem unterstützten Markup wie XHTML), die Attribute enthalten, die sie in Servercode programmierbar machen. Standardmäßig sind HTML-Elemente auf einer ASP.NET-Webseite für den Server nicht verfügbar. Stattdessen werden sie als nicht transparenter Text behandelt und an den Browser weitergegeben. Durch die Konvertierung von HTML-Elementen in HTML-Serversteuerelemente machen Sie diese Elemente allerdings für die Programmierung auf dem Server verfügbar.

Das Objektmodell für HTML-Serversteuerelemente entspricht fast dem der entsprechenden Elemente. So werden HTML-Attribute in HTML-Serversteuerelementen z. B. als Eigenschaften verfügbar gemacht.

Jedes HTML-Element auf einer Seite kann durch Hinzufügen des -Attributs in ein HTML-Serversteuerelement konvertiert werden. Während der Analyse erstellt das ASP.NET-Seitenframework Instanzen aller Elemente, die das -Attribut enthalten. Wenn innerhalb des Codes auf das Steuerelement als Member verwiesen werden soll, müssen Sie dem Steuerelement auch ein id-Attribut zuweisen.

Das Seitenframework stellt für die HTML-Elemente, die am häufigsten dynamisch auf einer Seite verwendet werden, vordefinierte HTML-Serversteuerelemente bereit: das form-Element, die input-Elemente (Textfeld, Kontrollkästchen, Schaltfläche Senden), das select-Element usw. Diese vordefinierten HTML-Serversteuerelemente verwenden die Grundeigenschaften des generischen Steuerelements. Außerdem stellt jedes Steuerelement i. d. R. eine eigene Gruppe von Eigenschaften und ein eigenes Ereignis bereit.

HTML-Serversteuerelemente bieten Folgendes:

  • Ein Objektmodell, das Sie mit vertrauten objektorientierten Techniken auf dem Server programmieren können. Jedes Serversteuerelement stellt Eigenschaften zur Verfügung, mit denen Sie die Markup-Attribute des Steuerelements programmgesteuert im Servercode bearbeiten können.

  • Eine Gruppe von Ereignissen, für die Sie – ähnlich wie bei einem Formular auf Clientbasis – Ereignishandler schreiben können, mit der Ausnahme, dass das Ereignis im Servercode behandelt wird.

  • Die Fähigkeit, Ereignisse im Clientskript zu behandeln.

  • Automatische Wartung des Steuerelementzustands. Wenn die Seite eine Schleife zum Server ausführt, werden die in die HTML-Serversteuerelemente eingegebenen Werte automatisch beibehalten und zum Browser zurückgeschickt.

  • Interaktion mit ASP.NET-Validierungssteuerelementen, sodass Sie sicherstellen können, dass der Benutzer die richtigen Informationen in ein Steuerelement eingegeben hat.

  • Datenbindung an eine oder mehrere Eigenschaften des Steuerelements.

  • Unterstützung für Formate, wenn die ASP.NET-Webseite in einem Browser angezeigt wird, der Cascading Stylesheets unterstützt.

  • Bereitstellung von benutzerdefinierten Attributen. Sie können einem HTML-Serversteuerelement alle Attribute hinzufügen, die Sie benötigen. Das Seitenframework rendert die Attribute ohne Änderung der Funktionen. Auf diese Weise können Sie den Steuerelementen browserspezifische Attribute hinzufügen.

Ausführliche Informationen zum Konvertieren eines HTML-Elements in ein HTML-Serversteuerelement finden Sie unter Gewusst wie: Hinzufügen von HTML-Serversteuerelementen zu einer Webseite mithilfe von ASP.NET-Syntax.

Webserversteuerelemente

Webserversteuerelemente bilden eine zweite Gruppe von Steuerelementen, die im Hinblick auf einen anderen Schwerpunkt entwickelt wurden. Diese Steuerelemente lassen sich HTML-Serversteuerelementen nicht notwendigerweise eins zu eins zuordnen. Stattdessen werden sie als abstrakte Steuerelemente definiert, in denen sich das eigentliche, vom Steuerelement gerenderte Markup-Element erheblich vom programmierten Modell unterscheiden kann. So kann ein RadioButtonList-Webserversteuerelement z. B. mit einem anderen Markup-Element in einer Tabelle oder als Inline-Text gerendert werden.

Webserversteuerelemente enthalten herkömmliche Formularsteuerelemente wie Schaltflächen und Textfelder sowie komplexe Steuerelemente, z. B. Tabellen. Sie verfügen außerdem über Steuerelemente, die häufig verwendete Formularfunktionen bereitstellen, z. B. Anzeigen von Daten in einem Datenblatt, Auswählen von Datumsangaben, Anzeigen von Menüs usw.

Webserversteuerelemente bieten alle Funktionen, die weiter oben für HTML-Serversteuerelemente beschrieben wurden (mit Ausnahme der Eins-zu-Eins-Zuordnung zu Elementen), sowie folgende weitere Features:

  • Ein umfassendes Objektmodell, das typsichere Programmierungsmöglichkeiten bereitstellt.

  • Automatische Browsererkennung. Die Steuerelemente können Browserfähigkeiten erkennen und entsprechendes Markup rendern.

  • Die Fähigkeit einiger Steuerelemente, mit Templates ein eigenes Layout für das Steuerelement zu definieren.

  • Die Fähigkeit einiger Steuerelemente, anzugeben, ob ein Steuerelementereignis eine direkte Übermittlung an den Server verursacht oder ob es zwischengespeichert und erst beim Versenden der Seite ausgelöst wird.

  • Unterstützung für Designs, mit denen Sie ein siteweit einheitliches Aussehen für Steuerelemente definieren können. Ausführliche Informationen finden Sie unter ASP.NET-Designs (Themes und Skins).

  • Möglichkeit, Ereignisse aus einem geschachtelten Steuerelement (z. B. einer Schaltfläche in einer Tabelle) an das Container-Steuerelement zu übergeben.

Die Steuerelemente verwenden z. B. folgende Syntax:

<asp:button attributes  id="Button1" />

In diesem Fall sind die Attribute keine Attribute von HTML-Elementen. Stattdessen sind sie Eigenschaften des Websteuerelements.

Beim Ausführen der ASP.NET-Webseite wird das Webserversteuerelement mit dem entsprechenden Markup auf der Seite gerendert, wobei das Markup-Element oftmals nicht nur vom Browsertyp, sondern auch von den Einstellungen abhängt, die Sie für das Steuerelement festgelegt haben. So kann z. B. ein TextBox-Steuerelement je nach Eigenschaften als input-Tag oder als textarea-Tag gerendert werden.

Referenzdokumentation und detaillierte Anweisungen zur Vorgehensweise sind für jedes Steuerelement separat erhältlich.

Siehe auch

Konzepte

Übersicht über ASP.NET-Webserversteuerelemente