WebControl.SupportsDisabledAttribute Propriété

Définition

Obtient une valeur qui indique si le contrôle doit définir l'attribut disabled de l'élément HTML rendu avec la valeur « disabled » quand la propriété IsEnabled du contrôle a la valeur false.

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

Valeur de propriété

Toujours true.

Attributs

Exemples

L’exemple suivant montre le balisage d’un contrôle désactivé Label :

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

Dans ASP.NET 3.5 et versions antérieures, ce balisage affiche le code HTML suivant :

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

Dans ASP.NET 4, si la valeur de la RenderingCompatibility propriété est 4.0 ou supérieure et si la DisabledCssClass propriété est définie sur sa valeur par défaut, le même balisage affiche le code HTML suivant :

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

Remarques

Dans les classes dérivées, cette propriété indique comment ASP.NET doit afficher le code HTML d’un contrôle lorsque le contrôle est désactivé.

Désactivation des contrôles web ASP.NET

Lorsque la Enabled propriété d’un contrôle ASP.NET a la valeur (c’est-à-dire false , lorsque le contrôle est désactivé), ASP.NET doit afficher le contrôle dans la page, mais l’afficher dans un état désactivé (généralement grisé). Si un contrôle parent est désactivé, les enfants de ce contrôle sont également affichés comme désactivés. Dans ce cas, la propriété du IsEnabled contrôle enfant est définie sur false, même si sa Enabled propriété peut avoir la truevaleur .

Dans ASP.NET versions 3.5 et antérieures, quand la propriété d’un IsEnabled contrôle est false, ASP.NET définit l’attribut disabled sur « disabled » dans l’élément HTML qu’il affiche pour le contrôle. Toutefois, la norme HTML 4.01 autorise l’attribut disabled uniquement sur certains éléments utilisés pour l’entrée utilisateur. Par exemple, l’attribut est autorisé pour les disabledinput éléments, mais pas pour les span éléments.

La plupart des navigateurs prennent en charge une apparence désactivée par défaut pour les éléments d’affichage uniquement qui ont disabled des attributs. Toutefois, pour se conformer aux normes HTML, par défaut, ASP.NET 4 omet les attributs non valides.

Utilisation de la propriété SupportsDisabledAttribute

Si la SupportsDisabledAttribute propriété est true, ASP.NET affiche un disabled attribut lorsque le contrôle est désactivé. Si cette propriété est false, ASP.NET affiche un class attribut lorsque le contrôle est désactivé.

Les classes dérivées remplacent cette propriété pour retourner false si toutes les conditions suivantes sont remplies :

  • Le contrôle affiche un élément HTML qui ne prend pas en charge l’attribut disabled .

  • La RenderingCompatibility propriété indique un numéro de version ASP.NET inférieur à 4.0.

La SupportsDisabledAttribute propriété n’indique pas nécessairement si l’élément HTML rendu pour un contrôle prend en charge (autorise) l’attribut disabled . Si la propriété d’un RenderingCompatibility contrôle indique un numéro de version ASP.NET inférieur à 4.0, la valeur de la propriété du SupportsDisabledAttribute contrôle peut être retournée true même si le code HTML rendu ne prend pas en charge l’attribut disabled .

Compatibilité descendante pour les contrôles désactivés

Lorsque vous utilisez Visual Studio pour mettre à niveau un projet web vers ASP.NET 4 à partir d’une version antérieure, Visual Studio définit automatiquement l’attribut controlRenderingCompatibilityVersion dans le fichier Web.config (qui définit la RenderingCompatibility propriété) sur le numéro de version antérieure. Étant donné que la SupportsDisabledAttribute propriété retourne true toujours lorsque la RenderingCompatibility propriété est inférieure à 4.0, les contrôles Web affichent du code HTML pour les contrôles désactivés comme ils l’ont fait dans la version antérieure. Si vous souhaitez qu’un site Web mis à niveau affiche du code HTML à l’aide de l’algorithme introduit dans ASP.NET 4, vous pouvez modifier ou supprimer l’attribut controlRenderingCompatibilityVersion . Pour plus d'informations, consultez la propriété RenderingCompatibility.

Définition d’une apparence désactivée à l’aide de CSS

Si la SupportsDisabledAttribute propriété d’un contrôle est false et que le contrôle est désactivé, ASP.NET définit l’attribut class de l’élément HTML rendu sur la valeur de la WebControl.DisabledCssClass propriété. La valeur par défaut de la WebControl.DisabledCssClass propriété est « aspNetDisabled ».

Pour fournir une apparence désactivée pour les contrôles désactivés, vous devez définir une règle CSS pour la classe représentée par la valeur de la WebControl.DisabledCssClass propriété.

L’élément HTML rendu pour un contrôle peut avoir plusieurs valeurs dans son class attribut s’il existe une valeur dans sa CssClass propriété. Pour plus d'informations, consultez la propriété DisabledCssClass.

S’applique à

Voir aussi