Freigeben über


Control.RenderingCompatibility Eigenschaft

Definition

Ruft einen Wert ab, der die ASP.NET Version angibt, mit der html gerendert wird, kompatibel ist.

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 HTML gerendert wird, ist kompatibel mit.

Attribute

Hinweise

ASP.NET legt diese Eigenschaft auf den Wert des controlRenderingCompatibilityVersion Attributs des pages Elements in der datei Web.config fest. Wenn das controlRenderingCompatibilityVersion Attribut nicht in der Web.config Datei festgelegt ist, ist der Standardwert die aktuelle Version von ASP.NET.

Vorsicht

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 in Ihrem Code festlegen, ist der Effekt unvorhersehbar.

Jede Version von ASP.NET kann HTML anders als frühere Versionen rendern. Wenn die Eigenschaft eines Label Steuerelements in ASP.NET 3.5 IsEnabled standardmäßig lautetfalse, rendert span ASP.NET ein Element, dessen disabled Attribut auf "disabled" festgelegt ist. In ASP.NET 4 wird das span Element standardmäßig mit einem CSS-Attribut (Cascading Stylesheet) class anstelle des disabled Attributs gerendert. Auf diese Weise können Sie die deaktivierte Darstellung des Steuerelements angeben und das Rendern ungültiger HTML-Code 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 pages Elements in der Web.config Datei festlegen, um anzugeben, mit welcher früheren Version Sie die Kompatibilität beibehalten möchten. Wenn Sie die Eigenschaft z. B. auf 3.5", RenderingCompatibility ein deaktiviertes Label Steuerelement festlegen, wird ein disabled Attribut und keine CSS-Klasse gerendert.

Hinweis

Die früheste Version, auf die Sie diese Eigenschaft festlegen können, ist 3.5.

Um die Abwärtskompatibilität aufrechtzuerhalten, legt Visual Studio beim Upgrade eines Webprojekts auf ASP.NET 4 aus einer früheren Version automatisch das controlRenderingCompatibilityVersion Attribut in der Web.config Datei auf 3.5. Wenn Sie möchten, dass eine aktualisierte Website HTML mithilfe des Algorithmus rendert, der in ASP.NET 4 eingeführt wurde, können Sie das controlRenderingCompatibilityVersion Attribut ändern oder entfernen.

Meistens ist das von dieser Eigenschaft gesteuerte Verhalten automatisch, und Sie müssen die RenderingCompatibility Eigenschaft nicht in Ihrem 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 Label Steuerelementen 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 höher. Um jedoch den gleichen Effekt zu erzielen, 3.5RenderingCompatibility muss der Code des benutzerdefinierten Steuerelements die Eigenschaft des CssClass Steuerelements auf "aspNetDisabled" festlegen, wenn die IsEnabled Eigenschaft lautetfalse.

Gilt für:

Weitere Informationen