Typy wbudowane dla typowych typów pierwotnych języka XAML

W języku XAML 2009 wprowadzono obsługę na poziomie języka XAML dla kilku typów danych, które są często używanymi typami pierwotnymi w środowisku uruchomieniowym języka wspólnego (CLR) i w innych językach programowania. Język XAML 2009 dodaje obsługę tych typów pierwotnych: x:Object, x:Boolean, , x:Char, x:String, x:Singlex:Decimal, x:Double, , x:Int32x:Int16, x:Int64, x:TimeSpanx:Urix:Byte, ix:Array

Poprzednie techniki dotyczące typów pierwotnych języka w znacznikach XAML

W języku XAML dla poprzednich wersji WPF można odwoływać się do elementów pierwotnych języka CLR, mapując zestaw i przestrzeń nazw, które zawierały klasę definicji pierwotnej CLR dla .NET Framework. Większość z nich należy do zestawu mscorlib i przestrzeni System nazw. Aby na przykład użyć funkcji Int32, można zadeklarować następujące mapowanie (z pokazanym poniżej przykładem użycia):

<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>

Elementy pierwotne języka XAML 2009

Według konwencji są wyświetlane typy pierwotne języka XAML i wszystkie inne elementy języka XAML, w tym prefiks x: . W ten sposób elementy języka XAML są zwykle używane w rzeczywistych znacznikach. Ta konwencja jest przestrzegane w dokumentacji koncepcyjnej dotyczącej języka XAML w WPF, a także w specyfikacji XAML.

x:Object

W przypadku kopii zapasowej CLR prymityw x:Object odpowiada Object.

Ten typ pierwotny nie jest zwykle używany w znacznikach aplikacji, ale może być przydatny w niektórych scenariuszach, takich jak sprawdzanie możliwości przypisywania w systemie typów XAML.

x:Boolean

W przypadku kopii zapasowej CLR prymityw x:Boolean odpowiada Boolean.

Język XAML analizuje wartości dla elementu x:Boolean jako bez uwzględniania liter. Należy pamiętać, x:Bool że nie jest to zaakceptowana alternatywa. Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 5.2.17 i 5.4.11.

x:Char

W przypadku kopii zapasowej CLR prymityw x:Char odpowiada Char.

Typy ciągów i znaków mają interakcję z ogólnym kodowaniem pliku na poziomie XML. Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 5.2.7 i 5.4.1.

x:String

W przypadku kopii zapasowej CLR prymityw x:String odpowiada String.

Typy ciągów i znaków mają interakcję z ogólnym kodowaniem pliku na poziomie XML. Aby uzyskać definicję specyfikacji języka XAML, zobacz sekcje [MS-XAML] 5.2.6.

x:Decimal

W przypadku kopii zapasowej CLR prymityw x:Decimal odpowiada Decimal.

Analizowanie KODU XAML jest z założenia wykonywane w ramach en-US kultury. W en-US obszarze kultury poprawnym separatorem dla składników dziesiętnych jest zawsze kropka (.) niezależnie od ustawień kultury środowiska projektowego lub docelowego klienta, w którym kod XAML jest ładowany w czasie działania.

Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 5.2.14 i 5.4.8.

x:Single

W przypadku kopii zapasowej CLR prymityw x:Single odpowiada Single.

Oprócz wartości liczbowych składnia tekstu dla x:Single również zezwala na tokeny Infinity, -Infinityi NaN. Tokeny te są traktowane jako wielkość liter.

x:Single Może obsługiwać wartości w postaci notacji naukowej, jeśli pierwszy znak w składni tekstowej to e lub E.

Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 5.2.8 i 5.4.2.

x:Double

W przypadku kopii zapasowej CLR prymityw x:Double odpowiada Double.

Oprócz wartości liczbowych składnia tekstu dla zezwala x:Double na tokeny Infinity, -Infinityi NaN. Tokeny te są traktowane jako wielkość liter.

x:Double może obsługiwać wartości w notacji naukowej. Użyj znaku lub , eE aby wprowadzić część wykładnikową.

Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 5.2.9 i 5.4.3.

x:Int16

W przypadku kopii zapasowej CLR prymityw x:Int16 odpowiada elementowi Int16 i x:Int16 jest traktowany jako podpisany. W języku XAML brak składni tekstowej znaku plus (+) jest implikowana jako dodatnia wartość ze znakiem.

Aby uzyskać definicję specyfikacji języka XAML, zobacz sekcje [MS-XAML] Sekcje 5.2.11 i 5.4.5.

x:Int32

W przypadku kopii zapasowej CLR prymityw x:Int32 odpowiada Int32. x:Int32 jest traktowany jako podpisany. W języku XAML brak składni tekstowej znaku plus (+) jest implikowana jako dodatnia wartość ze znakiem.

Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 5.2.12 i 5.4.6.

x:Int64

W przypadku kopii zapasowej CLR prymityw x:Int64 odpowiada Int64. x:Int64 jest traktowany jako podpisany. W języku XAML brak składni tekstowej znaku plus (+) jest implikowana jako dodatnia wartość ze znakiem.

Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 5.2.13 i 5.4.7.

x:TimeSpan

W przypadku kopii zapasowej CLR prymityw x:TimeSpan odpowiada TimeSpan.

Analizowanie kodu XAML dla formatu daty/daty jest z założenia wykonywane w ramach en-US kultury.

Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 5.2.16 i 5.4.10.

x:Uri

W przypadku kopii zapasowej CLR prymityw x:Uri odpowiada Uri.

Sprawdzanie protokołów nie jest częścią definicji XAML dla .x:Uri

Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 5.2.15 i 5.4.9.

x:Byte

W przypadku kopii zapasowej CLR prymityw x:Byte odpowiada Byte. A Byte / x:Byte jest traktowany jako niepodpisane.

Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 5.2.10 i 5.4.4.

x:Array

W przypadku kopii zapasowej CLR prymityw x:Array odpowiada Array.

Tablicę w języku XAML 2006 można zdefiniować przy użyciu składni rozszerzenia znaczników; Jednak składnia XAML 2009 jest prymitywem zdefiniowanym przez język, który nie wymaga dostępu do rozszerzenia znaczników. Aby uzyskać więcej informacji na temat obsługi języka XAML 2006, zobacz x:Array Markup Extension (Rozszerzenie znaczników x:Array).

Aby uzyskać definicję specyfikacji języka XAML, zobacz sekcje [MS-XAML] 5.2.18.

Obsługa WPF

W WPF można używać funkcji XAML 2009, ale tylko dla języka XAML, który nie jest kompilowany za pomocą znaczników. Kod XAML skompilowany na podstawie znaczników dla platformy WPF i formularz BAML języka XAML nie obsługują obecnie słów kluczowych i funkcji języka XAML 2009.

Scenariusz, w którym można używać funkcji XAML 2009 razem z WPF jest, jeśli tworzenia luźne XAML i następnie załadować ten kod XAML do środowiska uruchomieniowego WPF XamlReader.Loadi graf obiektów za pomocą . WPF i System.Windows.Markup.XamlReader jego może Load przetwarzać słowa kluczowe języka XAML 2009 i funkcje w prawidłową reprezentację grafu obiektu.