Control.RenderingCompatibility Propiedad

Definición

Obtiene o establece un valor que especifica la versión de ASP.NET compatible con los elementos HTML representados.

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

Valor de propiedad

Versión de ASP.NET compatible con los elementos HTML representados.

Atributos

Comentarios

ASP.NET establece esta propiedad en el valor del controlRenderingCompatibilityVersion atributo del pages elemento en el archivo Web.config. Si el controlRenderingCompatibilityVersion atributo no está establecido en el archivo Web.config, el valor predeterminado es la versión actual de ASP.NET.

Precaución

Hay un descriptor de acceso de conjunto público para esta propiedad, pero el descriptor de acceso set admite la infraestructura de .NET Framework y no está pensado para usarse directamente desde el código. Si establece este valor en el código, el efecto es imprevisible.

Cada versión de ASP.NET podría representar HTML de forma diferente de las versiones anteriores. Por ejemplo, en ASP.NET 3.5, si la IsEnabled propiedad de un Label control es false, de forma predeterminada, ASP.NET representa un span elemento cuyo disabled atributo está establecido en "disabled". En ASP.NET 4, de forma predeterminada, el span elemento se representa con un atributo de hoja de estilos en cascada (CSS) class en lugar del disabled atributo . Esto le permite especificar la apariencia deshabilitada del control y evitar la representación de HTML no válido. (En HTML 4.0 y XHTML 1.1, el span elemento no admite el disabled atributo).

Una aplicación web podría incluir código que no funcionaría correctamente si cambia la representación HTML. Para evitar este problema, puede establecer el controlRenderingCompatibilityVersion atributo del pages elemento en el archivo Web.config para indicar con qué versión anterior desea mantener la compatibilidad. Por ejemplo, si establece la RenderingCompatibility propiedad 3.5en , un control deshabilitado Label representará un disabled atributo y no una clase CSS.

Nota

La versión más antigua en la que puede establecer esta propiedad es 3.5.

Para mantener la compatibilidad con versiones anteriores, cuando se usa Visual Studio para actualizar un proyecto web a ASP.NET 4 desde una versión anterior, Visual Studio establece automáticamente el controlRenderingCompatibilityVersion atributo en el archivo 3.5Web.config en . Si desea que un sitio web actualizado represente HTML mediante el algoritmo que se introdujo en ASP.NET 4, puede cambiar o quitar el controlRenderingCompatibilityVersion atributo.

La mayoría de las veces, el comportamiento controlado por esta propiedad es automático y no es necesario comprobar la propiedad en el RenderingCompatibility código. Sin embargo, si va a programar un control personalizado, es posible que tenga que incluir código que modifique el comportamiento del control en función de la configuración de esta propiedad. Por ejemplo, un control personalizado para ASP.NET 4 podría estar compuesto de Label controles y el control personalizado podría especificar la apariencia deshabilitada del control mediante la generación de código JavaScript que modifica la aspNetDisabled clase . Esto funcionará según lo esperado si RenderingCompatibility es 4.0 o posterior. Pero para obtener el mismo efecto cuando RenderingCompatibility es 3.5, el código del control personalizado debe establecer la propiedad del CssClass control en "aspNetDisabled" cuando la IsEnabled propiedad es false.

Se aplica a

Consulte también