x:Arahan Kelas
Mengonfigurasi kompilasi markup XAML untuk menggabungkan kelas parsial antara markup dan code-behind. Kelas parsial kode didefinisikan dalam file kode terpisah dalam bahasa Spesifikasi Bahasa Umum (CLS), sedangkan kelas parsial markup biasanya dibuat oleh pembuatan kode selama kompilasi XAML.
Penggunaan Atribut XAML
<object x:Class="namespace.classname"...>
...
</object>
Nilai XAML
Nilai | Deskripsi |
---|---|
namespace |
Opsional. Menentukan namespace CLR yang berisi kelas parsial yang diidentifikasi oleh classname . Jika namespace ditentukan, titik (.) memisahkan namespace dan classname . Lihat Keterangan. |
classname |
Harus diisi. Menentukan nama CLR dari kelas parsial yang menghubungkan XAML yang dimuat dan kode Anda di belakang untuk XAML tersebut. |
Dependensi
x:Class
hanya dapat ditentukan pada elemen akar dari produksi XAML. x:Class
tidak valid pada objek apa pun yang memiliki induk dalam produksi XAML. Untuk informasi selengkapnya, lihat [MS-XAML] Bagian 6.3.1.6.
Keterangan
Nilai namespace
mungkin berisi titik tambahan untuk mengatur namespace terkait ke dalam hierarki nama, yang merupakan teknik umum dalam pemrograman .NET. Hanya titik terakhir dalam string x:Class
nilai yang ditafsirkan untuk memisahkan namespace
dan classname.
Kelas yang digunakan sebagai x:Class
tidak dapat menjadi kelas berlapis. Kelas berlapis tidak diizinkan karena menentukan arti titik untuk x:Class
string bersifat ambigu jika kelas berlapis diizinkan.
Dalam model pemrograman yang ada yang menggunakan x:Class
, x:Class
bersifat opsional dalam arti bahwa sepenuhnya valid untuk memiliki halaman XAML yang tidak memiliki kode di belakang. Namun, kemampuan tersebut berinteraksi dengan tindakan build seperti yang diimplementasikan oleh kerangka kerja yang menggunakan XAML. x:Class
kemampuan juga dipengaruhi oleh peran yang dimiliki berbagai klasifikasi konten yang ditentukan XAML dalam model aplikasi dan dalam tindakan build yang sesuai. Jika XAML Anda mendeklarasikan nilai atribut penanganan peristiwa atau membuat instans elemen kustom di mana kelas yang menentukan berada di kelas code-behind, Anda harus memberikan x:Class
referensi arahan (atau x:Subclass) ke kelas yang sesuai untuk code-behind.
Nilai direktif x:Class
harus berupa string yang menentukan nama kelas yang sepenuhnya memenuhi syarat tetapi tanpa informasi rakitan apa pun (setara dengan Type.FullName). Untuk aplikasi sederhana, Anda dapat menghilangkan informasi namespace CLR jika kode di belakang juga disusun dengan cara itu (definisi kode dimulai pada tingkat kelas).
File code-behind untuk definisi halaman atau aplikasi harus berada dalam file kode yang disertakan sebagai bagian dari proyek yang menghasilkan aplikasi yang dikompilasi dan melibatkan kompilasi markup. Anda harus mengikuti aturan nama untuk kelas CLR. Untuk informasi selengkapnya, lihat Panduan Desain Kerangka Kerja. Secara default, kelas code-behind harus public
; namun, Anda dapat menentukannya pada tingkat akses yang berbeda dengan menggunakan x:ClassModifier Directive.
Interpretasi atribut ini hanya berlaku untuk implementasi x:Class
XAML berbasis CLR, khususnya untuk Layanan XAML .NET. Implementasi XAML lainnya yang tidak didasarkan pada CLR dan yang tidak menggunakan Layanan XAML .NET mungkin menggunakan rumus resolusi yang berbeda untuk menghubungkan markup XAML dan mendukung kode run-time. Untuk informasi selengkapnya tentang interpretasi umum lainnya , x:Class
lihat [MS-XAML].
Pada tingkat arsitektur tertentu, arti x:Class
tidak ditentukan dalam Layanan XAML .NET. Ini karena Layanan XAML .NET tidak menentukan model pemrograman tempat markup dan kode dukungan XAML tersambung. Penggunaan tambahan direktif x:Class
mungkin diimplementasikan oleh kerangka kerja tertentu yang menggunakan model pemrograman atau model aplikasi untuk menentukan cara menyambungkan markup XAML dan kode berbasis CLR. Setiap kerangka kerja dapat memiliki tindakan build sendiri yang memungkinkan beberapa perilaku atau komponen tertentu yang harus disertakan dalam lingkungan build. Dalam kerangka kerja, tindakan build juga dapat bervariasi tergantung pada bahasa CLR tertentu yang digunakan untuk kode di belakang.
x:Kelas dalam Model Pemrograman WPF
Dalam aplikasi WPF dan model aplikasi WPF, x:Class
dapat dinyatakan sebagai atribut untuk elemen apa pun yang merupakan akar file XAML dan sedang dikompilasi (di mana XAML disertakan dalam proyek aplikasi WPF dengan Page
tindakan build), atau untuk Application akar dalam definisi aplikasi aplikasi WPF yang dikompilasi. Mendeklarasikan x:Class
pada elemen selain akar halaman atau akar aplikasi, atau pada file WPF XAML yang tidak dikompilasi, menyebabkan kesalahan waktu kompilasi di bawah kompilator .NET Framework 3.0 dan .NET Framework 3.5 WPF XAML. Untuk informasi tentang aspek x:Class
penanganan lain di WPF, lihat Code-Behind dan XAML di WPF.
x:Class untuk Windows Workflow Foundation
Untuk Windows Workflow Foundation, x:Class
beri nama kelas aktivitas kustom yang sepenuhnya terdiri dalam XAML, atau beri nama kelas parsial halaman XAML untuk perancang aktivitas dengan kode di belakang.
Catatan Penggunaan Silverlight
x:Class
untuk Silverlight didokumenkan secara terpisah. Untuk informasi selengkapnya, lihat XAML Namespace (x:) Fitur Bahasa (Silverlight).
Baca juga
.NET Desktop feedback