ASP.NET-Serversteuerelemente (Übersicht)

In diesem Artikel werden ASP.NET-Serversteuerelemente wie HTML-Serversteuerelemente, Webserversteuerelemente, Listensteuerelemente usw. vorgestellt.

Original Version des Produkts:   ASP.NET
Ursprüngliche KB-Nummer:   306459

Dieser Artikel bezieht sich auf die folgenden Namespaces für die Microsoft .NET Framework Klassenbibliothek:

  • System.Web.UI.HtmlControls.HtmlControl
  • System.Web.UI.WebControls.WebControl

Server Steuerelemente in ASP.net page Framework

Das ASP.NET-Seitenframework enthält eine Reihe integrierter Serversteuerelemente, mit denen ein stärker strukturiertes Programmiermodell für das Internet bereitgestellt werden soll. Diese Steuerelemente bieten die folgenden Funktionen:

  • Automatische Statusverwaltung.
  • Einfacher Zugriff auf Objektwerte, ohne das Objekt verwenden zu müssen Request .
  • Möglichkeit, auf Ereignisse in serverseitigem Code zu reagieren, um Anwendungen zu erstellen, die besser strukturiert sind.
  • Allgemeiner Ansatz zum Erstellen von Benutzeroberflächen für Webseiten.
  • Die Ausgabe wird basierend auf den Funktionen des Browsers automatisch angepasst.

Zusätzlich zu den integrierten Steuerelementen bietet das ASP.NET-Seitenframework auch die Möglichkeit, Benutzersteuerelemente und benutzerdefinierte Steuerelemente zu erstellen. Benutzersteuerelemente und benutzerdefinierte Steuerelemente können vorhandene Steuerelemente verbessern und erweitern, um eine wesentlich umfassendere Benutzeroberfläche zu erstellen.

HTML-Serversteuerelemente

Bei den HTML-Serversteuerelementen handelt es sich um HTML-Elemente, die ein runat=server Attribut enthalten. Die HTML-Serversteuerelemente haben dieselbe HTML-Ausgabe und dieselben Eigenschaften wie ihre entsprechenden HTML-Tags. Darüber hinaus bieten HTML-Serversteuerelemente automatische Statusverwaltung und serverseitige Ereignisse. HTML-Serversteuerelemente bieten folgende Vorteile:

  • Die HTML-Serversteuerelemente ordnen eins zu eins mit ihren entsprechenden HTML-Tags zu.
  • Wenn die ASP.NET-Anwendung kompiliert wird, werden die HTML-Serversteuerelemente mit dem runat=server Attribut in die Assembly kompiliert.
  • Die meisten Steuerelemente enthalten ein OnServerEvent für das am häufigsten verwendete Ereignis für das Steuerelement. Beispielsweise verfügt das <input type=button> Steuerelement über ein OnServerClick Ereignis.
  • Die HTML-Tags, die nicht als bestimmte HTML-Serversteuerelemente implementiert werden, können weiterhin auf der Serverseite verwendet werden. Sie werden jedoch der Assembly als hinzugefügt HtmlGenericControl .
  • Wenn die ASP.NET-Seite erneut gebucht wird, behalten die HTML-Serversteuerelemente ihre Werte bei.

Die System.Web.UI.HtmlControls.HtmlControl Basisklasse enthält alle allgemeinen Eigenschaften. HTML-Serversteuerelemente werden von dieser Klasse abgeleitet.

Um ein HTML-Serversteuerelement zu verwenden, verwenden Sie die folgende Syntax (die das HtmlInputText Steuerelement als Beispiel verwendet):

<input type="text" value="hello world" runat=server />

Weitere Informationen zu einzelnen HTML-Serversteuerelementen, die in ASP.net zur Verfügung stehen, finden Sie auf den folgenden Websites:

Webserver-Steuerelemente

Websteuerelemente ähneln den HTML-Serversteuerelementen wie Button, TextBox und Hyperlink, mit dem Unterschied, dass Websteuerelemente einen standardisierten Eigenschaftennamen aufweisen. Webserversteuerelemente bieten folgende Vorteile:

  • Erleichtern Sie Herstellern und Entwicklern das Erstellen von Tools oder Anwendungen, die die Benutzeroberfläche automatisch generieren.
  • Vereinfachen Sie den Prozess der Erstellung interaktiver Webformulare, die eine geringere Kenntnis der Funktionsweise von HTML-Steuerelementen erfordern, und machen Sie die Aufgabe, diese fehleranfällig zu verwenden.

Die System.Web.UI.WebControls.WebControl Basisklasse enthält alle allgemeinen Eigenschaften. Die meisten Webserversteuerelemente werden von dieser Klasse abgeleitet.

Verwenden Sie die folgende Syntax (die das TextBox-Steuerelement als Beispiel verwendet), um ein Webserversteuerelement zu verwenden:

<asp:textbox text="hello world" runat=server />

Webserversteuerelemente können in vier Kategorien unterteilt werden:

  • Grundlegende Websteuerelemente
  • Validierungssteuerelemente
  • Listensteuerelemente
  • Umfangreiche Steuerelemente

Grundlegende Websteuerelemente

Grundlegende Websteuerelemente bieten die gleiche Funktionalität wie Ihre Gegenparts für das HTML-Serversteuerelement. Grundlegende Websteuerelemente umfassen jedoch zusätzliche Methoden, Ereignisse und Eigenschaften, mit denen Sie programmieren können.

Weitere Informationen zu einzelnen Websteuerelementen, die in ASP.net zur Verfügung stehen, finden Sie auf den folgenden Websites:

Validierungssteuerelemente

Validierungssteuerelemente werden verwendet, um die Werte zu überprüfen, die in andere Steuerelemente der Seite eingegeben werden. Validierungssteuerelemente führen eine clientseitige Überprüfung, eine serverseitige Überprüfung oder beides durch, abhängig von den Funktionen des Browsers, in dem die Seite angezeigt wird. Validierungssteuerelemente bieten folgende Vorteile:

  • Sie können jedem Steuerelement, das Sie überprüfen möchten, ein oder mehrere Validierungssteuerelemente zuordnen.
  • Die Überprüfung wird ausgeführt, wenn das Seitenformular übermittelt wird.
  • Sie können programmgesteuert angeben, ob eine Überprüfung stattfinden soll, was hilfreich ist, wenn Sie eine Abbrechen-Schaltfläche bereitstellen möchten, damit der Benutzer beenden kann, ohne gültige Daten in allen Feldern ausfüllen zu müssen.
  • Die Validierungssteuerelemente erkennen automatisch, ob die Überprüfung auf Client-oder Serverseite ausgeführt werden soll.

Hinweis

Eine clientseitige Überprüfung fängt Fehler ab, bevor ein Postback ausgeführt wird. Wenn Sie also Kombinationen von clientseitigen und serverseitigen Validierungssteuerelementen auf einer einzelnen Seite haben, wird die serverseitige Überprüfung getrennt, wenn eine clientseitige Überprüfung fehlschlägt. Weitere Informationen zu einzelnen Validierungssteuerelementen, die in ASP.net zur Verfügung stehen, finden Sie auf den folgenden Websites:

Steuerelemente auflisten

Listensteuerelemente sind spezielle Webserversteuerelemente, die das Binden an Auflistungen unterstützen. Sie können Listensteuerelemente verwenden, um Datenzeilen in einem benutzerdefinierten Format der Vorlage anzuzeigen. Alle Listensteuerelemente legen DataSource-und DataMember-Eigenschaften offen, die zum Binden an Auflistungen verwendet werden.

Listensteuerelemente können nur an Auflistungen gebunden werden, die die Schnittstellen IEnumerable, ICollection oder IListSource unterstützen. Beispielsweise wird eine Visual C# .net-Beispielseite wie folgt angezeigt:

<%@ Page Language="C#" %>
<script runat="server">
    Public void Page_Load()
    {
        String[] myStringArray = new String[] {"one","two","three"};
        rptr.DataSource = myStringArray;
        rptr.DataBind();
    }
</script>
<html>
    <body>
        <asp:repeater id=rptr runat="server">
            <itemtemplate><%# Container.DataItem %><br></itemtemplate>
        </asp:repeater>
    </body>
</html>

Eine Visual Basic .net Beispielseite wird wie folgt angezeigt:

<%@ Page Language="vb" %>
<script runat="server">
    public sub Page_Load()
        Dim myStringArray as String()
        myStringArray = new String() {"one","two","three"}
        rptr.DataSource = myStringArray
        rptr.DataBind()
    end sub
</script>
<html>
    <body>
        <asp:repeater id=rptr runat="server">
            <itemtemplate><%# Container.DataItem %><br></itemtemplate>
        </asp:repeater>
    </body>
</html>

Die Ausgabe wird wie folgt angezeigt:

  • ONE
  • two
  • three

Weitere Informationen zu einzelnen Listensteuerelementen, die in ASP.net zur Verfügung stehen, finden Sie auf den folgenden Websites:

Umfangreiche Steuerelemente

Zusätzlich zu den vorhergehenden Steuerelementen bietet das ASP.NET-Seitenframework einige aufgabenspezifische Steuerelemente, die als Rich Controls bezeichnet werden. Rich-Steuerelemente werden mit mehreren HTML-Elementen erstellt und enthalten umfangreiche Funktionen. Beispiele für Rich-Steuerelemente sind das Calendar-Steuerelement und das AdRotator-Steuerelement.

Weitere Informationen zu einzelnen Rich-Steuerelementen, die in ASP.net zur Verfügung stehen, finden Sie auf den folgenden Websites:

Benutzersteuerelemente

Häufig möchten Sie möglicherweise die Benutzeroberfläche Ihres Webformulars wieder verwenden, ohne zusätzlichen Code schreiben zu müssen. ASP.NET ermöglicht dies, indem Sie Ihre Webformulare in Benutzersteuerelemente umwandeln. Benutzersteuerelemente, die die Dateierweiterung. ascx aufweisen, können innerhalb eines einzelnen Webformulars mehrmals verwendet werden.

Führen Sie die folgenden Schritte aus, um ein Webformular in ein Benutzersteuerelement zu konvertieren:

  1. Entfernen Sie alle <html> , <head> , <body> und <form> Tags.
  2. Wenn die @ Page Direktive auf der Seite angezeigt wird, ändern Sie Sie in @ Control .
  3. Fügen className Sie ein Attribut in die @ Control Direktive ein, sodass das Benutzersteuerelement beim Instanziieren stark typisiert ist.
  4. Geben Sie dem Steuerelement einen beschreibenden Dateinamen, und ändern Sie die Dateierweiterung von aspx in. ascx.

Weitere Informationen zu Benutzersteuerelementen finden Sie unter Webformulare-Benutzersteuerelemente.

Benutzerdefinierte Steuerelemente

Zusätzlich zu den integrierten Websteuerelementen ermöglicht ASP.net auch das Erstellen eigener benutzerdefinierter Steuerelemente. Es kann sinnvoll sein, benutzerdefinierte Steuerelemente zu entwickeln, wenn Sie mit einem der folgenden Szenarien konfrontiert sind:

  • Sie müssen die Funktionalität von zwei oder mehr integrierten Websteuerelementen kombinieren.
  • Sie müssen die Funktionalität eines integrierten Steuerelements erweitern.
  • Sie benötigen ein Steuerelement, das sich von den derzeit vorhandenen Steuerelementen unterscheidet.

Weitere Informationen zum Entwickeln von benutzerdefinierten Steuerelementen finden Sie in den folgenden Themen: