WebControl.SupportsDisabledAttribute Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene un valore che indica se il controllo deve impostare l'attributo disabled
dell'elemento HTML di cui è stato eseguito il rendering su "disabilitato" quando la proprietà IsEnabled del controllo è 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
Valore della proprietà
Sempre true
.
- Attributi
Esempio
L'esempio seguente mostra il markup per un controllo disabilitato Label :
<asp:Label id="Label1" runat="server" Text="Test" Enabled="false"/>
In ASP.NET 3.5 e versioni precedenti, questo markup esegue il rendering del codice HTML seguente:
<span id="Label1" disabled="disabled">Test</span>
In ASP.NET 4, se il valore della RenderingCompatibility proprietà è 4.0 o versione successiva e se la DisabledCssClass proprietà è impostata sul valore predefinito, lo stesso markup esegue il rendering del codice HTML seguente:
<span id="Label1" class="aspNetDisabled">Test</span>
Commenti
Nelle classi derivate, questa proprietà indica come ASP.NET deve eseguire il rendering del codice HTML per un controllo quando il controllo è disabilitato.
Disabilitazione dei controlli Web ASP.NET
Quando la Enabled proprietà di un controllo ASP.NET è impostata su false
( ovvero quando il controllo è disabilitato), la finalità è che ASP.NET deve eseguire il rendering del controllo nella pagina, ma visualizzarlo in uno stato disabilitato (in genere in grigio). Se un controllo padre è disabilitato, anche gli elementi figlio di tale controllo vengono visualizzati come disabilitati. In tal caso, la proprietà del IsEnabled controllo figlio è impostata su false
, anche se la relativa Enabled proprietà potrebbe essere impostata su true
.
In ASP.NET 3.5 e versioni precedenti, quando la proprietà di IsEnabled un controllo è false
, ASP.NET imposta l'attributo disabled
su "disabled" nell'elemento HTML di cui esegue il rendering per il controllo. Tuttavia, lo standard HTML 4.01 consente l'attributo disabled
solo per determinati elementi usati per l'input dell'utente. Ad esempio, l'attributo disabled
è consentito per input
gli elementi, ma non per span
gli elementi.
La maggior parte dei browser supporta un aspetto disabilitato predefinito per gli elementi di sola visualizzazione con disabled
attributi. Tuttavia, per rispettare gli standard HTML, per impostazione predefinita ASP.NET 4 omette attributi non validi.
Modalità di utilizzo della proprietà SupportsDisabledAttribute
Se la SupportsDisabledAttribute proprietà è true
, ASP.NET esegue il rendering di un disabled
attributo quando il controllo è disabilitato. Se questa proprietà è false
, ASP.NET esegue il rendering di un class
attributo quando il controllo è disabilitato.
Le classi derivate eseguono l'override di questa proprietà per restituire false
se sono soddisfatte tutte le condizioni seguenti:
Il controllo esegue il rendering di un elemento HTML che non supporta l'attributo
disabled
.La RenderingCompatibility proprietà indica un numero di versione ASP.NET inferiore a 4.0.
La SupportsDisabledAttribute proprietà non indica necessariamente se l'elemento HTML di cui viene eseguito il rendering per un controllo supporta (consente) l'attributo disabled
. Se la proprietà di RenderingCompatibility un controllo indica un numero di versione ASP.NET inferiore a 4.0, il valore della proprietà del SupportsDisabledAttribute controllo potrebbe restituire true
anche se il codice HTML sottoposto a rendering non supporta l'attributo disabled
.
Compatibilità con le versioni precedenti per i controlli disabilitati
Quando si usa Visual Studio per aggiornare un progetto Web a ASP.NET 4 da una versione precedente, Visual Studio imposta automaticamente l'attributo controlRenderingCompatibilityVersion
nel file di Web.config (che imposta la RenderingCompatibility proprietà) sul numero di versione precedente. Poiché la SupportsDisabledAttribute proprietà restituisce true
sempre quando la RenderingCompatibility proprietà è inferiore alla 4.0, i controlli Web eseguono il rendering del codice HTML per i controlli disabilitati come nella versione precedente. Se si vuole che un sito Web aggiornato esegua il rendering del codice HTML usando l'algoritmo introdotto in ASP.NET 4, è possibile modificare o rimuovere l'attributo controlRenderingCompatibilityVersion
. Per altre informazioni, vedere la proprietà RenderingCompatibility.
Impostazione di un aspetto disabilitato tramite CSS
Se la SupportsDisabledAttribute proprietà di un controllo è e il controllo è false
disabilitato, ASP.NET imposta l'attributo dell'elemento class
HTML di cui è stato eseguito il rendering sul valore della WebControl.DisabledCssClass proprietà. Il valore predefinito della WebControl.DisabledCssClass proprietà è "aspNetDisabled".
Per fornire un aspetto disabilitato per i controlli disabilitati, è necessario definire una regola CSS per la classe rappresentata dal valore della WebControl.DisabledCssClass proprietà .
L'elemento HTML di cui viene eseguito il rendering per un controllo potrebbe avere più di un valore nell'attributo class
se è presente un valore nella relativa CssClass proprietà. Per altre informazioni, vedere la proprietà DisabledCssClass.