Übersicht über ASP.NET-Serversteuerelemente

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

Ursprüngliche 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 integrierter Serversteuerelemente, die ein strukturiertes Programmiermodell für das Web bereitstellen. Diese Steuerelemente bieten die folgenden Features:

  • Automatische Zustandsverwaltung.
  • Einfacher Zugriff auf Objektwerte, ohne das Objekt verwenden zu Request müssen.
  • 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 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 verbessern 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 haben die gleiche HTML-Ausgabe und dieselben Eigenschaften wie die entsprechenden HTML-Tags. Darüber hinaus bieten HTML-Serversteuerelemente die automatische Zustandsverwaltung und serverseitige Ereignisse. HTML-Serversteuerelemente bieten die folgenden Vorteile:

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

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

Verwenden Sie zum Verwenden eines HTML-Serversteuerelements 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 Für Hersteller und Entwickler, Tools oder Anwendungen zu erstellen, die automatisch die Benutzeroberfläche generieren.
  • Vereinfachen Sie das Erstellen interaktiver Webformulare, was weniger Kenntnisse über die Funktionsweise von HTML-Steuerelementen erfordert und deren Verwendung weniger fehleranfällig macht.

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

Verwenden Sie zum Verwenden eines Webserversteuerelements 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
  • Überprüfungssteuerelemente
  • Steuerelemente auflisten
  • Umfangreiche Steuerelemente

Grundlegende Websteuerelemente

Grundlegende Websteuerelemente bieten die gleiche Funktionalität wie ihre HTML-Serversteuerelement-Entsprechungen. Grundlegende Websteuerelemente enthalten jedoch zusätzliche Methoden, Ereignisse und Eigenschaften, für die Sie programmieren können.

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

Überprüfungssteuerelemente

Überprüfungssteuerelemente werden verwendet, um die Werte zu überprüfen, die in andere Steuerelemente der Seite eingegeben werden. Validierungssteuerelemente führen je nach den Funktionen des Browsers, in dem die Seite angezeigt wird, clientseitige Überprüfungen, serverseitige Überprüfungen oder beides durch. Validierungssteuerelemente bieten die folgenden Vorteile:

  • Sie können jedem Steuerelement, das Sie überprüfen möchten, ein oder mehrere Überprüfungssteuerelemente zuordnen.
  • Die Überprüfung wird durchgeführt, wenn das Seitenformular gesendet wird.
  • Sie können programmgesteuert angeben, ob eine Überprüfung erfolgen soll. Dies ist hilfreich, wenn Sie eine Schaltfläche zum Abbrechen bereitstellen möchten, damit der Benutzer beendet werden kann, ohne gültige Daten in allen Feldern ausfüllen zu müssen.
  • Die Überprüfungssteuerelemente erkennen automatisch, ob die Überprüfung auf client- oder serverseitiger Seite durchgeführt werden soll.

Hinweis

Eine clientseitige Überprüfung erfasst Fehler, bevor ein Postbackvorgang abgeschlossen ist. Wenn Sie über Kombinationen aus clientseitigen und serverseitigen Überprüfungssteuerelementen auf einer einzelnen Seite verfügen, wird daher die serverseitige Überprüfung vorausgestellt, wenn eine clientseitige Überprüfung fehlschlägt. Weitere Informationen zu einzelnen Überprüfungssteuerelementen, 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 im Format einer angepassten Vorlage anzuzeigen. Alle Listensteuerelemente machen DataSource- und DataMember-Eigenschaften verfügbar, die zum Binden an Auflistungen verwendet werden.

Listensteuerelemente können nur an Sammlungen gebunden werden, die die IEnumerable-, ICollection- oder IListSource-Schnittstellen 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 verfügbar sind, finden Sie auf den folgenden Websites:

Umfangreiche Steuerelemente

Zusätzlich zu den vorherigen 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 Steuerelement Kalender 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 möglicherweise die Benutzeroberfläche Ihres Webformulars wiederverwenden, ohne zusätzlichen Code schreiben zu müssen. ASP.NET ermöglicht dies, indem Sie Ihre Web Forms in Benutzersteuerelemente konvertieren. Benutzersteuerelemente mit der Dateierweiterung ASCX können mehrmals innerhalb eines einzelnen Webformulars verwendet werden.

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

  1. Entfernen Sie alle <html> , <head> , und <body> <form> Tags.
  2. Wenn die @ Page Direktive auf der Seite angezeigt wird, ändern Sie sie in @ Control .
  3. Fügen Sie ein className Attribut in die @ Control Direktive ein, damit das Benutzersteuerelement beim Instanziieren stark eingegeben wird.
  4. Weisen Sie dem Steuerelement einen beschreibenden Dateinamen zu, 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 mindestens zwei 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 benutzerdefinierter Steuerelemente finden Sie in den folgenden Themen: