Control.RenderingCompatibility Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém um valor que especifica a versão do ASP.NET com a qual o HTML renderizado será compatível.
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 da propriedade
A versão do ASP.NET com a qual um HTML renderizado será compatível.
- Atributos
Comentários
ASP.NET define essa propriedade como o valor do controlRenderingCompatibilityVersion
atributo do pages
elemento no arquivo Web.config. Se o controlRenderingCompatibilityVersion
atributo não estiver definido no arquivo Web.config, o valor padrão será a versão atual do ASP.NET.
Cuidado
Há um acessador de conjunto público para essa propriedade, mas o acessador set dá suporte à infraestrutura .NET Framework e não se destina a ser usado diretamente do seu código. Se você definir esse valor em seu código, o efeito será imprevisível.
Cada versão do ASP.NET pode renderizar HTML de forma diferente das versões anteriores. Por exemplo, no ASP.NET 3.5, se a IsEnabled propriedade de um Label controle for false
, por padrão, ASP.NET renderiza um span
elemento cujo disabled
atributo está definido como "desabilitado". No ASP.NET 4, por padrão, o span
elemento é renderizado com um atributo CSS (folha de estilos em cascata) class
em vez do disabled
atributo . Isso permite especificar a aparência desabilitada do controle e evita a renderização de HTML inválido. (Em HTML 4.0 e XHTML 1.1, o span
elemento não dá suporte ao disabled
atributo .)
Um aplicativo Web pode incluir código que não funcionaria corretamente se a renderização html fosse alterada. Para evitar esse problema, você pode definir o controlRenderingCompatibilityVersion
atributo do pages
elemento no arquivo Web.config para indicar com qual versão anterior você deseja manter a compatibilidade. Por exemplo, se você definir a RenderingCompatibility propriedade como 3.5
, um controle desabilitado Label renderizará um disabled
atributo e não uma classe CSS.
Observação
A versão mais antiga para a qual você pode definir essa propriedade é 3.5
.
Para manter a compatibilidade com versões anteriores, quando você usa o Visual Studio para atualizar um projeto Web para ASP.NET 4 de uma versão anterior, o Visual Studio define automaticamente o controlRenderingCompatibilityVersion
atributo no arquivo Web.config como 3.5
. Se você quiser que um site atualizado renderize HTML usando o algoritmo introduzido no ASP.NET 4, poderá alterar ou remover o controlRenderingCompatibilityVersion
atributo.
Na maioria das vezes, o comportamento controlado por essa propriedade é automático e você não precisa verificar a RenderingCompatibility propriedade em seu código. No entanto, se você estiver programando um controle personalizado, talvez seja necessário incluir um código que altere o comportamento do controle com base na configuração dessa propriedade. Por exemplo, um controle personalizado para ASP.NET 4 pode ser composto por Label controles e o controle personalizado pode especificar a aparência desabilitada do controle gerando código JavaScript que altera a aspNetDisabled
classe. Isso funcionará conforme o esperado se RenderingCompatibility for 4.0
ou posterior. Mas para obter o mesmo efeito quando RenderingCompatibility for 3.5
, o código do controle personalizado deve definir a propriedade do CssClass
controle como "aspNetDisabled" quando a IsEnabled propriedade for false
.