Bagikan melalui


Jenis bawaan untuk primitif bahasa XAML umum

XAML 2009 memperkenalkan dukungan tingkat bahasa XAML untuk beberapa jenis data yang sering digunakan primitif dalam runtime bahasa umum (CLR) dan dalam bahasa pemrograman lainnya. XAML 2009 menambahkan dukungan untuk primitif ini: x:Object, , , x:Stringx:Charx:Doublex:Int16x:Singlex:Booleanx:Decimal, x:Int32, x:Int64, , x:TimeSpan, , x:Uri, , dan x:Bytex:Array

Teknik Sebelumnya untuk Primitif Bahasa dalam XAML Markup

Di XAML untuk versi WPF sebelumnya, Anda dapat mereferensikan primitif bahasa CLR dengan memetakan assembly dan namespace yang berisi kelas definisi primitif CLR untuk .NET Framework. Sebagian besar berada di perakitan mscorlib dan System namespace layanan. Misalnya, untuk menggunakan Int32, Anda dapat mendeklarasikan pemetaan berikut (dengan contoh penggunaan yang ditunjukkan setelahnya):

<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib">
  <Application.Resources>
    <sys:Int32 x:Key="intMeaning">42</sys:Int32>
  </Application.Resources>
</Application>

Primitif Bahasa XAML 2009

Berdasarkan konvensi, primitif bahasa untuk XAML dan semua elemen bahasa XAML lainnya ditampilkan, termasuk awalan x: . Ini adalah bagaimana elemen bahasa XAML biasanya digunakan dalam markup dunia nyata. Konvensi ini diikuti dalam dokumentasi konseptual untuk XAML di WPF dan juga dalam spesifikasi XAML.

x:Objek

Untuk dukungan CLR, x:Object primitif sesuai dengan Object.

Primitif ini biasanya tidak digunakan dalam markup aplikasi, tetapi mungkin berguna untuk beberapa skenario seperti memeriksa penugasan dalam sistem jenis XAML.

x:Boolean

Untuk dukungan CLR, x:Boolean primitif sesuai dengan Boolean.

XAML mengurai nilai karena x:Boolean tidak peka huruf besar/kecil. Perhatikan bahwa x:Bool itu bukan alternatif yang diterima. Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.17 dan 7.4.11.

x:Char

Untuk dukungan CLR, x:Char primitif sesuai dengan Char.

Jenis string dan karakter memiliki interaksi dengan pengodean keseluruhan file di tingkat XML. Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.7 dan 7.4.1.

x:String

Untuk dukungan CLR, x:String primitif sesuai dengan String.

Jenis string dan karakter memiliki interaksi dengan pengodean keseluruhan file di tingkat XML. Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.6.

x:Desimal

Untuk dukungan CLR, x:Decimal primitif sesuai dengan Decimal.

Penguraian XAML secara inheren dilakukan di bawah en-US budaya. Di bawah en-US budaya, pemisah yang benar untuk komponen desimal selalu merupakan periode (.) terlepas dari pengaturan budaya lingkungan pengembangan, atau target klien akhirnya di mana XAML dimuat pada run time.

Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.14 dan 7.4.8.

x:Tunggal

Untuk dukungan CLR, x:Single primitif sesuai dengan Single.

Selain nilai numerik, sintaks teks untuk x:Single juga mengizinkan token Infinity, -Infinity, dan NaN. Token ini diperlakukan sebagai peka huruf besar/kecil.

x:Single dapat mendukung nilai dalam bentuk notasi ilmiah, jika karakter pertama dalam sintaks teks adalah e atau E.

Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.8 dan 7.4.2.

x:Double

Untuk dukungan CLR, x:Double primitif sesuai dengan Double.

Selain nilai numerik, sintaks teks untuk x:Double mengizinkan token Infinity, , -Infinitydan NaN. Token ini diperlakukan sebagai peka huruf besar/kecil.

x:Double dapat mendukung nilai dalam bentuk notasi ilmiah. Gunakan karakter e atau E untuk memperkenalkan bagian eksponen.

Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.9 dan 7.4.3.

x:Int16

Untuk dukungan CLR, x:Int16 primitif sesuai dengan Int16 dan x:Int16 diperlakukan sebagai ditandatangani. Di XAML, tidak adanya sintaks teks masuk plus (+) tersirat sebagai nilai yang ditandatangani positif.

Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.11 dan 7.4.5.

x:Int32

Untuk dukungan CLR, x:Int32 primitif sesuai dengan Int32. x:Int32 diperlakukan sebagai ditandatangani. Di XAML, tidak adanya sintaks teks masuk plus (+) tersirat sebagai nilai yang ditandatangani positif.

Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.12 dan 7.4.6.

x:Int64

Untuk dukungan CLR, x:Int64 primitif sesuai dengan Int64. x:Int64 diperlakukan sebagai ditandatangani. Di XAML, tidak adanya sintaks teks masuk plus (+) tersirat sebagai nilai yang ditandatangani positif.

Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.13 dan 7.4.7.

x:TimeSpan

Untuk dukungan CLR, x:TimeSpan primitif sesuai dengan TimeSpan.

Penguraian XAML untuk format tanggal waktu secara inheren dilakukan di bawah en-US budaya.

Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.16 dan 7.4.10.

x:Uri

Untuk dukungan CLR, x:Uri primitif sesuai dengan Uri.

Memeriksa protokol bukan bagian dari definisi XAML untuk x:Uri.

Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.15 dan 7.4.9.

x:Byte

Untuk dukungan CLR, x:Byte primitif sesuai dengan Byte. diperlakukan Byte / x:Byte sebagai tidak ditandatangani.

Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.10 dan 7.4.4.

x:Array

Untuk dukungan CLR, x:Array primitif sesuai dengan Array.

Anda dapat menentukan array di XAML 2006 dengan menggunakan sintaks ekstensi markup; namun, sintaks XAML 2009 adalah primitif yang ditentukan bahasa yang tidak memerlukan akses ekstensi markup. Untuk informasi selengkapnya tentang dukungan XAML 2006, lihat x:Array Markup Extension.

Untuk definisi spesifikasi bahasa XAML, lihat [MS-XAML] Bagian 7.2.18.

Dukungan WPF

Di WPF, Anda dapat menggunakan fitur XAML 2009 tetapi hanya untuk XAML yang tidak dikompilasi markup. XAML yang dikompilasi markup untuk WPF dan bentuk BAML XAML saat ini tidak mendukung kata kunci dan fitur XAML 2009.

Skenario di mana Anda dapat menggunakan fitur XAML 2009 bersama dengan WPF adalah jika Anda menulis XAML longgar dan Anda kemudian memuat XAML tersebut ke dalam runtime WPF dan grafik objek dengan XamlReader.Load. WPF System.Windows.Markup.XamlReader dan dapat Load memproses kata kunci dan fitur bahasa XAML 2009 menjadi representasi grafik objek yang valid.