Übersicht über ASP.NET Serversteuerelemente

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

              Originale Produktversion: ASP.NET
Ursprüngliche KB-Nummer: 306459

Dieser Artikel bezieht sich auf die folgenden Namespaces der Microsoft .NET Framework-Klassenbibliothek:

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

Serversteuerelemente in ASP.NET Seitenframework

Das ASP.NET Seitenframework enthält eine Reihe von integrierten Serversteuerelementen, die ein strukturiertes Programmiermodell für das Web bereitstellen sollen. Diese Steuerelemente bieten die folgenden Features:

  • Automatische Zustandsverwaltung.
  • Einfacher Zugriff auf Objektwerte, ohne das Request -Objekt verwenden zu müssen.
  • Möglichkeit, auf Ereignisse im serverseitigen Code zu reagieren, um Besser strukturierte Anwendungen zu erstellen.
  • Gängiger Ansatz zum Erstellen von Benutzeroberflächen für Webseiten.
  • Die Ausgabe wird automatisch basierend auf den Funktionen des Browsers 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 erweitern und erweitern, um eine viel umfangreichere Benutzeroberfläche zu erstellen.

HTML-Serversteuerelemente

Die HTML-Serversteuerelemente sind HTML-Elemente, die ein runat=server -Attribut enthalten. Die HTML-Serversteuerelemente verfügen über die gleiche HTML-Ausgabe und die gleichen Eigenschaften wie die entsprechenden HTML-Tags. Darüber hinaus bieten HTML-Serversteuerelemente automatische Zustandsverwaltung und serverseitige Ereignisse. HTML-Serversteuerelemente bieten die folgenden Vorteile:

  • Die HTML-Serversteuerelemente ordnen eins zu eins mit den 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 sind, können weiterhin serverseitig verwendet werden. sie werden der Assembly jedoch als HtmlGenericControlhinzugefügt.
  • Wenn die ASP.NET Seite erneut gepostet 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 verfügbar sind, finden Sie auf den folgenden Websites:

Webserversteuerelemente

Websteuerelemente ähneln den HTML-Serversteuerelementen wie Button, TextBox und Hyperlink, mit der Ausnahme, dass Websteuerelemente über einen standardisierten Satz von Eigenschaftennamen verfügen. Webserversteuerelemente bieten die folgenden Vorteile:

  • Erleichtern Sie Es Herstellern und Entwicklern, Tools oder Anwendungen zu erstellen, die die Benutzeroberfläche automatisch generieren.
  • Vereinfachen Sie den Prozess der Erstellung interaktiver Webformulare, was weniger Kenntnisse über die Funktionsweise von HTML-Steuerelementen erfordert und die Aufgabe, sie weniger fehleranfällig zu verwenden.

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

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

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

Webserversteuerelemente können in vier Kategorien unterteilt werden:

  • Grundlegende Websteuerelemente
  • Validierungssteuerelemente
  • Listensteuerelemente
  • Rich-Steuerelemente

Grundlegende Websteuerelemente

Grundlegende Websteuerelemente bieten die gleiche Funktionalität wie ihre Html-Serversteuerelemente. Grundlegende Websteuerelemente enthalten jedoch zusätzliche Methoden, Ereignisse und Eigenschaften, mit denen Sie programmieren können.

Weitere Informationen zu einzelnen Websteuerelementen, die in ASP.NET verfügbar sind, 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 abhängig von den Funktionen des Browsers, in dem die Seite angezeigt wird, eine clientseitige Überprüfung, eine serverseitige Überprüfung oder beides durch. Validierungssteuerelemente bieten die folgenden 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 gesendet wird.
  • Sie können programmgesteuert angeben, ob eine Überprüfung erfolgen soll. Dies ist nützlich, wenn Sie eine Abbrechen-Schaltfläche bereitstellen möchten, damit der Benutzer den Vorgang 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 serverseitiger Seite durchgeführt werden soll.

Hinweis

Eine clientseitige Überprüfung fängt Fehler ab, bevor ein Postbackvorgang abgeschlossen ist. Wenn Sie daher über Kombinationen aus clientseitigen und serverseitigen Validierungssteuerelementen auf einer einzelnen Seite verfügen, wird die serverseitige Überprüfung vorzeitig entfernt, wenn bei einer clientseitigen Überprüfung ein Fehler auftritt. Weitere Informationen zu einzelnen Validierungssteuerelementen, die in ASP.NET verfügbar sind, finden Sie auf den folgenden Websites:

Steuerelemente auflisten

Listensteuerelemente sind spezielle Webserversteuerelemente, die die Bindung an Sammlungen unterstützen. Sie können Listensteuerelemente verwenden, um Datenzeilen in einem angepassten Vorlagenformat anzuzeigen. Alle Listensteuerelemente machen die Eigenschaften DataSource und DataMember verfügbar, die zum Binden an Sammlungen verwendet werden.

Listensteuerelemente können nur an Sammlungen gebunden werden, die die Schnittstellen IEnumerable, ICollection oder IListSource unterstützen. Eine Visual C# .NET-Beispielseite wird beispielsweise 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 sieht wie folgt aus:

  • ONE
  • Zwei
  • three

Weitere Informationen zu einzelnen Listensteuerelementen, die in ASP.NET verfügbar sind, finden Sie auf den folgenden Websites:

Umfangreiche Steuerelemente

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

Weitere Informationen zu einzelnen Rich-Steuerelementen, die in ASP.NET verfügbar sind, finden Sie auf den folgenden Websites:

Benutzersteuerelemente

Häufig möchten Sie die Benutzeroberfläche Ihres Webformulars wiederverwenden, ohne zusätzlichen Code schreiben zu müssen. ASP.NET ermöglicht Ihnen dies, indem Sie Ihre Web Forms in Benutzersteuerelemente konvertieren. Benutzersteuerelemente, die die Dateierweiterung.ascx aufweisen, können mehrmals in einem einzelnen Webformular verwendet werden.

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

  1. Entfernen Sie alle <html>Tags , <head>, <body>und <form> .
  2. Wenn die @ Page Direktive auf der Seite angezeigt wird, ändern Sie sie in @ Control.
  3. Schließen Sie ein className Attribut in die @ Control -Anweisung ein, damit das Benutzersteuerelement stark eingegeben wird, wenn Sie es instanziieren.
  4. Geben Sie dem Steuerelement einen beschreibenden Dateinamen, und ändern Sie die Dateierweiterung von .aspx in .ascx.

Weitere Informationen zu Benutzersteuerelementen finden Sie unter Web Forms Benutzersteuerelemente.

Benutzerdefinierte Steuerelemente

Zusätzlich zu den integrierten Websteuerelementen können Sie mit ASP.NET auch eigene benutzerdefinierte Steuerelemente erstellen. Es kann hilfreich 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 steuerelementen unterscheidet, die derzeit vorhanden sind.

Weitere Informationen zum Entwickeln benutzerdefinierter Steuerelemente finden Sie in den folgenden Themen: