Control.RenderingCompatibility Eigenschaft

Definition

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.5festlegen, 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.5automatisch 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.5ist, muss der Code des benutzerdefinierten Steuerelements die Eigenschaft des Steuerelements CssClass auf "aspNetDisabled" festlegen, wenn die IsEnabled -Eigenschaft ist false.

Gilt für:

Weitere Informationen