Wbudowane typy dla typowych typów pierwotnych języka XAML
Język XAML 2009 wprowadza obsługę na poziomie języka XAML dla kilku typów danych, które są często używane w środowisku uruchomieniowym języka wspólnego (CLR) i w innych językach programowania. Język XAML 2009 dodaje obsługę tych elementów pierwotnych: x:Object
, , x:Char
x:Byte
x:Uri
x:TimeSpan
x:Int64
x:Int32
x:Double
x:Decimal
x:Int16
x:Boolean
x:String
x:Single
ix:Array
Poprzednie techniki dla języków pierwotnych w adiustacji 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óra zawierała klasę definicji pierwotnej CLR dla programu .NET Framework. Większość z nich należy do zestawu mscorlib i System przestrzeni nazw. Aby na przykład użyć Int32metody , można zadeklarować następujące mapowanie (z przykładowym użyciem pokazanym później):
<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>
XAML 2009 Language Primitives
Zgodnie z konwencją wyświetlane są typy pierwotne języka XAML i wszystkie inne elementy języka XAML, w tym x:
prefiks. W ten sposób elementy języka XAML są zwykle używane w rzeczywistych znacznikach. Ta konwencja jest przestrzegana w dokumentacji koncepcyjnej dla języka XAML w WPF, a także w specyfikacji XAML.
x:Object
W przypadku tworzenia kopii zapasowej x:Object
ŚRODOWISKA CLR pierwotny odpowiada elementowi Object.
Ten typ pierwotny nie jest zwykle używany w adiustacji aplikacji, ale może być przydatny w niektórych scenariuszach, takich jak sprawdzanie możliwości przypisywania w systemie typów XAML.
x:Wartość logiczna
W przypadku tworzenia kopii zapasowej x:Boolean
ŚRODOWISKA CLR pierwotny odpowiada elementowi Boolean.
Język XAML analizuje wartości jako x:Boolean
bez uwzględniania wielkości liter. Należy pamiętać, że x:Bool
nie jest to zaakceptowana alternatywa. Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 7.2.17 i 7.4.11.
x:Char
W przypadku tworzenia kopii zapasowej x:Char
ŚRODOWISKA CLR pierwotny odpowiada elementowi 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 7.2.7 i 7.4.1.
x:String
W przypadku tworzenia kopii zapasowej x:String
ŚRODOWISKA CLR pierwotny odpowiada elementowi 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 [MS-XAML] Sekcje 7.2.6.
x:Dziesiętne
W przypadku tworzenia kopii zapasowej x:Decimal
ŚRODOWISKA CLR pierwotny odpowiada elementowi Decimal.
Analizowanie kodu XAML jest z natury wykonywane w kulturze en-US
. W obszarze en-US
kultury prawidłowy separator składników dziesiętnych jest zawsze kropką (.
) niezależnie od ustawień kultury środowiska deweloperskiego lub docelowego klienta ostatecznego, w którym kod XAML jest ładowany w czasie wykonywania.
Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 7.2.14 i 7.4.8.
x:Single
W przypadku tworzenia kopii zapasowej x:Single
ŚRODOWISKA CLR pierwotny odpowiada elementowi Single.
Oprócz wartości liczbowych składnia x:Single
tekstu zezwala również na tokeny Infinity
, -Infinity
i NaN
. Te tokeny są traktowane jako wrażliwe na wielkość liter.
x:Single
może obsługiwać wartości w postaci notacji naukowej, jeśli pierwszy znak w składni tekstu to e
lub E
.
Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 7.2.8 i 7.4.2.
x:Double
W przypadku tworzenia kopii zapasowej x:Double
ŚRODOWISKA CLR pierwotny odpowiada elementowi Double.
Oprócz wartości liczbowych składnia tekstu zezwala na x:Double
tokeny Infinity
, -Infinity
i NaN
. Te tokeny są traktowane jako wrażliwe na wielkość liter.
x:Double
może obsługiwać wartości w formie notacji naukowej. Użyj znaku e
lub E
, aby wprowadzić część wykładniczą.
Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 7.2.9 i 7.4.3.
x:Int16
W przypadku tworzenia kopii x:Int16
zapasowej CLR pierwotny odpowiada Int16 elementowi i x:Int16
jest traktowany jako podpisany. W języku XAML brak składni tekstu znaku plus (+
) jest implikowana jako dodatnia wartość ze znakiem.
Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 7.2.11 i 7.4.5.
x:Int32
W przypadku tworzenia kopii zapasowej x:Int32
ŚRODOWISKA CLR pierwotny odpowiada elementowi Int32. x:Int32
jest traktowany jako podpisany. W języku XAML brak składni tekstu znaku plus (+
) jest implikowana jako dodatnia wartość ze znakiem.
Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 7.2.12 i 7.4.6.
x:Int64
W przypadku tworzenia kopii zapasowej x:Int64
ŚRODOWISKA CLR pierwotny odpowiada elementowi Int64. x:Int64
jest traktowany jako podpisany. W języku XAML brak składni tekstu znaku plus (+
) jest implikowana jako dodatnia wartość ze znakiem.
Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 7.2.13 i 7.4.7.
x:TimeSpan
W przypadku tworzenia kopii zapasowej x:TimeSpan
ŚRODOWISKA CLR pierwotny odpowiada elementowi TimeSpan.
Analizowanie kodu XAML dla formatu daty godziny jest z natury wykonywane w kulturze en-US
.
Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 7.2.16 i 7.4.10.
x:Uri
W przypadku tworzenia kopii zapasowej x:Uri
ŚRODOWISKA CLR pierwotny odpowiada elementowi Uri.
Sprawdzanie protokołów nie jest częścią definicji XAML dla elementu x:Uri
.
Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 7.2.15 i 7.4.9.
x:Byte
W przypadku tworzenia kopii zapasowej x:Byte
ŚRODOWISKA CLR pierwotny odpowiada elementowi Byte. Element A Byte / x:Byte
jest traktowany jako niepodpisany.
Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 7.2.10 i 7.4.4.
x:Array
W przypadku tworzenia kopii zapasowej x:Array
ŚRODOWISKA CLR pierwotny odpowiada elementowi Array.
Tablicę można zdefiniować w języku XAML 2006 przy użyciu składni rozszerzenia znaczników; Jednak składnia XAML 2009 jest zdefiniowanym językiem pierwotnym, 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 x:Array Markup).
Aby uzyskać definicję specyfikacji języka XAML, zobacz [MS-XAML] Sekcje 7.2.18.
Obsługa platformy WPF
W WPF można używać funkcji XAML 2009, ale tylko dla języka XAML, który nie jest skompilowany. Kod XAML skompilowany w języku XAML dla platformy WPF i formularza BAML języka XAML nie obsługuje obecnie słów kluczowych i funkcji XAML 2009.
Scenariusz, w którym można używać funkcji XAML 2009 razem z WPF, jest tworzenie luźnego kodu XAML, a następnie ładowanie tego kodu XAML do środowiska uruchomieniowego I grafu obiektów WPF za pomocą polecenia XamlReader.Load. WPF System.Windows.Markup.XamlReader i jego Load może przetwarzać słowa kluczowe i funkcje języka XAML 2009 w prawidłowej reprezentacji grafu obiektów.
.NET Desktop feedback