Control.RenderingCompatibility Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft einen Wert ab, der die ASP.NET-Version angibt, mit der gerenderte HTML-Objekte kompatibel sind.
public:
virtual property Version ^ RenderingCompatibility { Version ^ get(); void set(Version ^ value); };
[System.ComponentModel.Bindable(false)]
[System.ComponentModel.Browsable(false)]
public virtual Version RenderingCompatibility { get; set; }
[<System.ComponentModel.Bindable(false)>]
[<System.ComponentModel.Browsable(false)>]
member this.RenderingCompatibility : Version with get, set
Public Overridable Property RenderingCompatibility As Version
Eigenschaftswert
Die ASP.NET-Version, mit der gerenderte HTML-Objekte kompatibel sind.
- Attribute
Hinweise
ASP.NET legt diese Eigenschaft auf den Wert des controlRenderingCompatibilityVersion
Attributs des pages
Elements in der Web.config-Datei fest. Wenn das controlRenderingCompatibilityVersion
Attribut in der Web.config-Datei nicht festgelegt ist, ist der Standardwert die aktuelle Version von ASP.NET.
Achtung
Es gibt einen öffentlichen Set-Accessor für diese Eigenschaft, aber der Set-Accessor unterstützt die .NET Framework-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. Wenn Sie diesen Wert im Code festlegen, ist der Effekt unvorhersehbar.
Jede Version von ASP.NET kann HTML anders als frühere Versionen rendern. Wenn beispielsweise in ASP.NET 3.5 die IsEnabled Eigenschaft eines Label Steuerelements standardmäßig lautet false
, rendert ASP.NET ein span
Element, dessen disabled
Attribut auf "deaktiviert" festgelegt ist. In ASP.NET 4 wird das span
Element standardmäßig mit einem CSS-Attribut (Cascading Stylesheet) class
anstelle des disabled
-Attributs gerendert. Dadurch können Sie das deaktivierte Erscheinungsbild des Steuerelements angeben und das Rendern ungültigen HTML-Codes vermeiden. (In HTML 4.0 und XHTML 1.1 unterstützt das span
-Element das disabled
-Attribut nicht.)
Eine Webanwendung kann Code enthalten, der nicht ordnungsgemäß funktioniert, wenn sich das HTML-Rendering ändert. Um dieses Problem zu vermeiden, können Sie das controlRenderingCompatibilityVersion
Attribut des Elements in der pages
Web.config-Datei festlegen, um anzugeben, mit welcher früheren Version Sie die Kompatibilität beibehalten möchten. Wenn Sie beispielsweise die RenderingCompatibility Eigenschaft auf 3.5
festlegen, rendert ein deaktiviertes Label Steuerelement ein disabled
Attribut und keine CSS-Klasse.
Hinweis
Die früheste Version, auf die Sie diese Eigenschaft festlegen können, ist 3.5
.
Um die Abwärtskompatibilität zu gewährleisten, legt Visual Studio das Attribut in der controlRenderingCompatibilityVersion
Web.config-Datei 3.5
automatisch fest, wenn Sie ein Webprojekt auf ASP.NET 4 von einer früheren Version aktualisieren. Wenn eine aktualisierte Website HTML mithilfe des Algorithmus rendern soll, der in ASP.NET 4 eingeführt wurde, können Sie das controlRenderingCompatibilityVersion
Attribut ändern oder entfernen.
In den meisten Jahren erfolgt das von dieser Eigenschaft gesteuerte Verhalten automatisch, und Sie müssen die RenderingCompatibility Eigenschaft nicht im Code überprüfen. Wenn Sie jedoch ein benutzerdefiniertes Steuerelement programmieren, müssen Sie möglicherweise Code einschließen, der das Verhalten des Steuerelements basierend auf der Einstellung dieser Eigenschaft ändert. Beispielsweise kann ein benutzerdefiniertes Steuerelement für ASP.NET 4 aus Steuerelementen Label bestehen, und das benutzerdefinierte Steuerelement kann die deaktivierte Darstellung des Steuerelements angeben, indem JavaScript-Code generiert wird, der die aspNetDisabled
Klasse ändert. Dies funktioniert wie erwartet, wenn RenderingCompatibility dies der Fall ist 4.0
oder später. Um jedoch den gleichen Effekt zu erzielen, wenn RenderingCompatibility3.5
ist, muss der Code des benutzerdefinierten Steuerelements die Eigenschaft des Steuerelements CssClass
auf "aspNetDisabled" festlegen, wenn die IsEnabled -Eigenschaft ist false
.