Share via


Eigenschaften von ASP.NET-Serversteuerelementen

Eigenschaften sind vergleichbar mit Feldern, verfügen aber zusätzlich über Accessormethoden. Statt öffentlicher Felder der Steuerelemente sollten Sie Eigenschaften verfügbar machen, da Eigenschaften das Verbergen von Daten ermöglichen, mit Versionsangaben versehen werden können und von visuellen Designern wie z. B. Visual Studio .NET unterstützt werden. Die Accessorfunktionen können neben dem Setzen bzw. Abrufen einer Eigenschaft auch zusätzliche Programmierlogikfunktionen ausführen. Wenn Sie mit Eigenschaften noch nicht vertraut sind, finden Sie unter Übersicht über Eigenschaften einführende Informationen.

Eigenschaften, die von der Control-Klasse geerbt werden

Eine vollständige Auflistung der Eigenschaften, die ein Steuerelement von der Control-Klasse erbt, finden Sie unter System.Web.UI.Control. In der folgenden Liste sind einige häufig verwendete Eigenschaften aufgeführt.

  • Controls – Auflistung der untergeordneten Steuerelemente eines Steuerelements.
  • ID – Benutzerdefinierter Bezeichner eines Steuerelements.
  • Page – Seite, die das Steuerelement enthält.
  • Parent – Steuerelement, zu dessen Controls-Auflistung ein Steuerelement gehört. (Steuerelement A ist Steuerelement B übergeordnet, wenn B ein Element von A.Controls ist).
  • ViewState – Datenstruktur, die an den Client und wieder zurück gesendet wird und i. A. bei Schleifen zum Speichern von Formulardaten verwendet wird. ViewState ist vom Typ StateBag. Dabei handelt es sich um ein Verzeichnis, in dem die Daten als Name/Wert-Paare gespeichert sind.
  • EnableViewState – Gibt an, ob der Anzeigestatus des Steuerelements bei Schleifen erhalten bleibt. Bleibt der Anzeigestatus der übergeordneten Struktur nicht erhalten, bleibt er auch automatisch bei den untergeordneten Steuerelementen nicht erhalten.
  • UniqueID – Hierarchischer, eindeutiger Bezeichner, der einem Steuerelement durch das ASP.NET-Seitenframework zugewiesen wird.
  • ClientID – eindeutiger Bezeichner, der dem Steuerelement durch das ASP.NET-Seitenframework zugewiesen und als HTML-ID-Attribut auf dem Client wiedergegeben wird. Im Gegensatz zur ClientID kann in der UniqueID ein Doppelpunkt (:) verwendet werden. Doppelpunkte sind weder beim HTML-ID -Attribut noch bei Variablennamen im Clientskript zulässig.
  • Visible – Legt fest, ob ein Steuerelement auf einer Seite sichtbar ist.

Eigenschaften, die von der WebControl-Klasse geerbt werden

Wenn ein Steuerelement von der WebControl-Klasse abgeleitet wird, erbt es zusätzliche Eigenschaften für die visuellen Darstellung. Eine vollständige Auflistung der Eigenschaften, die von der WebControl-Klasse geerbt werden, finden Sie unter System.Web.UI.WebControl. In der folgenden Aufzählung sind einige häufig verwendete Eigenschaften der WebControl-Klasse aufgeführt.

  • Font – Schriftart des Steuerelements.
  • ForeColor – Vordergrundfarbe des Steuerelements.
  • BackColor – Hintergrundfarbe des Steuerelements.
  • Height – Höhe des Steuerelements.
  • Width – Breite des Steuerelements.
  • Attributes – Auflistung von Name/Wert-Paaren, die dem Client als Attribute bereitgestellt werden. Die Attributes-Eigenschaft enthält die Vereinigung von deklarativ definierten Attributen, die nicht mit den Eigenschaften oder Ereignissen eines Steuerelements übereinstimmen, und solchen, die programmseitig festgelegt werden.

Durch die WebControl-Klasse werden außerdem einige zusätzliche CSS (Cascading Style Sheet)-Formate als streng typisierte Eigenschaften offen gelegt.

Anpassen von geerbten Eigenschaften

Geerbte Eigenschaften können durch das Steuerelement überschrieben und somit angepasst werden. Das Überschreiben einer Eigenschaft erfolgt durch Überschreiben seiner Accessoren. Im folgenden Beispiel wird ein Steuerelement gezeigt, das von der Button-Klasse abgeleitet ist und dessen BackColor-Eigenschaft so überschrieben wird, dass die Hintergrundfarbe immer grün ist.

using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Drawing;
namespace CustomControls
{
public class DerivedButton : Button
  {
   public DerivedButton() : base()
       {
          base.BackColor = Color.Green;
       }
   public override Color BackColor
   {
      get
         {
            return base.BackColor; 
          }
      set
         {
             // Do nothing.
         }
   }

  }
}
[Visual Basic]
Option Explicit
Option Strict

Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Drawing

Namespace CustomControls
   Public Class DerivedButton
      Inherits Button
      
      Public Sub New()
         MyBase.BackColor = Color.Green
      End Sub
      
      Public Overrides Property BackColor() As Color
         Get
            Return MyBase.BackColor
         End Get
         Set
            ' Do nothing.
         End Set
      End Property 
   End Class
End Namespace

Außerdem können auch die Metadaten von Eigenschaften verändert werden, indem Attribute überschrieben (oder bereitgestellt) werden. Im folgenden Codefragment wird gezeigt, wie die BackColor-Eigenschaft des Eigenschaftenbrowsers eines Designers wie Visual Studio .NET ausgeblendet wird, indem das BrowsableAttribute auf false gesetzt wird.

[Browsable(false)]
public override Color BackColor{...}
[Visual Basic]
<Browsable(False)> _
Public Overrides Property BackColor() As Color
   ...
End Property

Siehe auch

Definieren einer Eigenschaft | Eigenschaftentypen | Beispiel für eine benutzerdefinierte Eigenschaft