Share via


Control.RenderingCompatibility Properti

Definisi

Mendapatkan nilai yang menentukan versi ASP.NET yang dirender HTML akan kompatibel.

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

Nilai Properti

Versi ASP.NET yang merender HTML akan kompatibel.

Atribut

Keterangan

ASP.NET mengatur properti ini ke nilai controlRenderingCompatibilityVersion atribut pages elemen dalam file Web.config. controlRenderingCompatibilityVersion Jika atribut tidak diatur dalam file Web.config, nilai defaultnya adalah versi ASP.NET saat ini.

Perhatian

Ada aksesor set publik untuk properti ini, tetapi pengakses set mendukung infrastruktur .NET Framework dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. Jika Anda menetapkan nilai ini dalam kode Anda, efeknya tidak dapat diprediksi.

Setiap rilis ASP.NET mungkin merender HTML secara berbeda dari rilis sebelumnya. Misalnya, dalam ASP.NET 3,5, jika IsEnabled properti kontrol adalah false, secara default, ASP.NET merender span elemen yang atributnya disabled diatur ke "Labeldinonaktifkan". Dalam ASP.NET 4, secara default, span elemen dirender dengan atribut lembar gaya berjenjang (CSS) class alih-alih disabled atribut . Ini memungkinkan Anda menentukan tampilan kontrol yang dinonaktifkan dan menghindari penyajian HTML yang tidak valid. (Dalam HTML 4.0 dan XHTML 1.1, span elemen tidak mendukung disabled atribut .)

Aplikasi Web mungkin menyertakan kode yang tidak akan berfungsi dengan benar jika penyajian HTML berubah. Untuk menghindari masalah ini, Anda dapat mengatur controlRenderingCompatibilityVersion atribut pages elemen dalam file Web.config untuk menunjukkan versi sebelumnya mana yang ingin Anda pertahankan kompatibilitasnya. Misalnya, jika Anda mengatur RenderingCompatibility properti ke 3.5, kontrol yang dinonaktifkan Label akan merender disabled atribut dan bukan kelas CSS.

Catatan

Versi paling awal yang dapat Anda atur properti ini adalah 3.5.

Untuk mempertahankan kompatibilitas mundur, saat Anda menggunakan Visual Studio untuk meningkatkan proyek Web ke ASP.NET 4 dari versi yang lebih lama, Visual Studio secara otomatis mengatur controlRenderingCompatibilityVersion atribut dalam file Web.config ke 3.5. Jika Anda ingin situs Web yang dimutakhirkan merender HTML menggunakan algoritma yang diperkenalkan di ASP.NET 4, Anda dapat mengubah atau menghapus controlRenderingCompatibilityVersion atribut.

Sebagian besar waktu, perilaku yang dikendalikan oleh properti ini bersifat otomatis dan Anda tidak perlu memeriksa RenderingCompatibility properti dalam kode Anda. Namun, jika Anda memprogram kontrol kustom, Anda mungkin harus menyertakan kode yang mengubah perilaku kontrol berdasarkan pengaturan properti ini. Misalnya, kontrol kustom untuk ASP.NET 4 mungkin terdiri dari Label kontrol, dan kontrol kustom mungkin menentukan tampilan kontrol yang dinonaktifkan dengan menghasilkan kode JavaScript yang mengubah aspNetDisabled kelas. Ini akan berfungsi seperti yang diharapkan jika RenderingCompatibility adalah 4.0 atau nanti. Tetapi untuk mendapatkan efek yang sama ketika RenderingCompatibility adalah 3.5, kode kontrol kustom harus mengatur properti kontrol CssClass ke "aspNetDisabled" ketika IsEnabled properti adalah false.

Berlaku untuk

Lihat juga