Control.RenderingCompatibility Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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
.