WebControl.SupportsDisabledAttribute Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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 true
valeur .
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 disabled
input
é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.