WebControl.SupportsDisabledAttribute Eigenschaft

Definition

Ruft einen Wert ab, der angibt, ob vom Steuerelement das disabled-Attribut des gerenderten HTML-Elements auf "disabled" festgelegt werden soll, wenn die IsEnabled-Eigenschaft des Steuerelements false ist.

public:
 virtual property bool SupportsDisabledAttribute { bool get(); };
[System.ComponentModel.Browsable(false)]
public virtual bool SupportsDisabledAttribute { get; }
[<System.ComponentModel.Browsable(false)>]
member this.SupportsDisabledAttribute : bool
Public Overridable ReadOnly Property SupportsDisabledAttribute As Boolean

Eigenschaftswert

Immer true.

Attribute

Beispiele

Das folgende Beispiel zeigt Markup für ein deaktiviertes Label Steuerelement:

<asp:Label id="Label1" runat="server" Text="Test" Enabled="false"/>

In ASP.NET Version 3.5 und früheren Versionen rendert dieses Markup den folgenden HTML-Code:

<span id="Label1" disabled="disabled">Test</span>

Wenn in ASP.NET 4 der Wert der RenderingCompatibility Eigenschaft 4.0 oder höher ist und die DisabledCssClass Eigenschaft auf ihren Standardwert festgelegt ist, rendert das gleiche Markup den folgenden HTML-Code:

<span id="Label1" class="aspNetDisabled">Test</span>

Hinweise

In abgeleiteten Klassen gibt diese Eigenschaft an, wie ASP.NET HTML für ein Steuerelement rendern soll, wenn das Steuerelement deaktiviert ist.

Deaktivieren ASP.NET Websteuerelemente

Wenn die Enabled -Eigenschaft eines ASP.NET-Steuerelements auf false festgelegt ist (d. a. wenn das Steuerelement deaktiviert ist), besteht die Absicht darin, dass ASP.NET das Steuerelement auf der Seite rendern, es aber in einem deaktivierten Zustand (in der Regel abgeblendet) anzeigen sollte. Wenn ein übergeordnetes Steuerelement deaktiviert ist, werden untergeordnete Elemente dieses Steuerelements ebenfalls als deaktiviert angezeigt. In diesem Fall ist die Eigenschaft des untergeordneten IsEnabled Steuerelements auf falsefestgelegt, auch wenn seine Enabled Eigenschaft auf truefestgelegt ist.

Wenn in ASP.NET 3.5 und früheren Versionen die Eigenschaft eines Steuerelements IsEnabled lautet false, legt ASP.NET das disabled Attribut im HTML-Element, das für das Steuerelement gerendert wird, auf "deaktiviert" fest. Der HTML 4.01-Standard lässt das disabled Attribut jedoch nur für bestimmte Elemente zu, die für die Benutzereingabe verwendet werden. Beispielsweise ist das disabled Attribut für input Elemente zulässig, nicht aber für span Elemente.

Die meisten Browser unterstützen eine standardmäßig deaktivierte Darstellung für reine Anzeigeelemente mit disabled Attributen. Um jedoch den HTML-Standards zu entsprechen, werden standardmäßig ASP.NET 4 ungültige Attribute weggelassen.

Verwendung der SupportsDisabledAttribute-Eigenschaft

Wenn die SupportsDisabledAttribute Eigenschaft ist true, rendert ASP.NET ein disabled Attribut, wenn das Steuerelement deaktiviert ist. Wenn diese Eigenschaft ist false, rendert ASP.NET ein class Attribut, wenn das Steuerelement deaktiviert ist.

Abgeleitete Klassen überschreiben diese Eigenschaft, um zurückzugeben false , wenn alle folgenden Bedingungen erfüllt sind:

  • Das Steuerelement rendert ein HTML-Element, das das disabled Attribut nicht unterstützt.

  • Die RenderingCompatibility -Eigenschaft gibt eine ASP.NET Versionsnummer unter 4.0 an.

Die SupportsDisabledAttribute -Eigenschaft gibt nicht unbedingt an, ob das HTML-Element, das für ein Steuerelement gerendert wird, das disabled Attribut unterstützt (zulässt). Wenn die Eigenschaft eines Steuerelements RenderingCompatibility eine ASP.NET Versionsnummer unter 4.0 angibt, kann der Wert der -Eigenschaft des Steuerelements SupportsDisabledAttribute zurückgegeben werden true , auch wenn der gerenderte HTML-Code das disabled Attribut nicht unterstützt.

Abwärtskompatibilität für deaktivierte Steuerelemente

Wenn Sie visual Studio verwenden, um ein Webprojekt von einer früheren Version auf ASP.NET 4 zu aktualisieren, legt Visual Studio das Attribut in der controlRenderingCompatibilityVersion Web.config-Datei (wodurch die RenderingCompatibility Eigenschaft festlegt) automatisch auf die frühere Versionsnummer fest. Da die SupportsDisabledAttribute Eigenschaft immer dann zurückgegeben wird true , wenn die RenderingCompatibility Eigenschaft niedriger als 4.0 ist, werden Websteuerelemente wie in der früheren Version HTML für deaktivierte Steuerelemente rendern. Wenn eine aktualisierte Website HTML mithilfe des in ASP.NET 4 eingeführten Algorithmus rendern soll, können Sie das controlRenderingCompatibilityVersion Attribut ändern oder entfernen. Weitere Informationen finden Sie in den Ausführungen zur RenderingCompatibility-Eigenschaft.

Festlegen einer deaktivierten Darstellung mithilfe von CSS

Wenn die SupportsDisabledAttribute Eigenschaft eines Steuerelements ist false und das Steuerelement deaktiviert ist, legt ASP.NET das class Attribut des gerenderten HTML-Elements auf den Wert der WebControl.DisabledCssClass -Eigenschaft fest. Der Standardwert der WebControl.DisabledCssClass Eigenschaft ist "aspNetDisabled".

Um eine deaktivierte Darstellung für deaktivierte Steuerelemente bereitzustellen, müssen Sie eine CSS-Regel für die Klasse definieren, die durch den Wert der WebControl.DisabledCssClass -Eigenschaft dargestellt wird.

Das HTML-Element, das für ein Steuerelement gerendert wird, kann mehr als einen Wert im class Attribut aufweisen, wenn in seiner CssClass Eigenschaft ein Wert vorhanden ist. Weitere Informationen finden Sie in den Ausführungen zur DisabledCssClass-Eigenschaft.

Gilt für:

Weitere Informationen