Freigeben über


Integrierte Typen für allgemeine XAML-Sprachgrundtypen

XAML 2009 bietet Unterstützung auf XAML-Sprachebene für mehrere Datentypen, die häufig verwendete Grundtypen in der Common Language Runtime (CLR) und in anderen Programmiersprachen sind. XAML 2009 bietet Unterstützung für diese Grundtypen: x:Object, x:Boolean, x:Char, x:String, x:Decimal, x:Single, x:Double, x:Int16, x:Int32, x:Int64, x:TimeSpan, x:Uri, x:Byteund x:Array

Frühere Techniken für Sprachgrundtypen im XAML-Markup

In XAML für frühere WPF-Versionen können Sie auf die CLR-Sprachgrundtypen verweisen, indem Sie die Assembly und den Namespace zuordnen, die eine CLR-Grundtypdefinitionsklasse für .NET Framework enthalten. Die meisten dieser Elemente befinden sich in der Mscorlib-Assembly und System Namespace. Wenn Sie z. B. Int32verwenden möchten, können Sie die folgende Zuordnung deklarieren (mit einem anschließenden Beispiel für die Verwendung):

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

Standardmäßig werden die Sprachgrundtypen für XAML und alle anderen XAML-Sprachelemente angezeigt, einschließlich des Präfixes x:. So werden XAML-Sprachelemente in der Regel in realen Markups verwendet. Diese Konvention wird in der konzeptionellen Dokumentation für XAML in WPF und auch in der XAML-Spezifikation befolgt.

x:Object

Bei CLR-Sicherung entspricht der x:Object Grundtyp Object.

Dieser Grundtyp wird in der Regel nicht im Anwendungsmarkup verwendet, kann aber für einige Szenarien nützlich sein, z. B. die Überprüfung der Zuweisungsfähigkeit in einem XAML-Typsystem.

x:Boolean

Bei CLR-Sicherung entspricht der x:Boolean Grundtyp Boolean.

XAML analysiert Werte für x:Boolean bei nicht beachteter Groß-/Kleinschreibung. Beachten Sie, dass x:Bool keine akzeptierte Alternative ist. Die XAML-Sprachspezifikationsdefinition finden Sie unter [MS-XAML] Sections 7.2.17 and 7.4.11.

x:Char

Bei CLR-Sicherung entspricht der x:Char Grundtyp Char.

Zeichenfolgen- und Zeichentypen haben Interaktion mit der allgemeinen Codierung der Datei auf XML-Ebene. Die XAML-Sprachspezifikationsdefinition finden Sie in [MS-XAML] Abschnitten 7.2.7 und 7.4.1.

x:String

Bei CLR-Sicherung entspricht der x:String Grundtyp String.

Zeichenfolgen- und Zeichentypen haben Interaktion mit der allgemeinen Codierung der Datei auf XML-Ebene. Die XAML-Sprachspezifikationsdefinition finden Sie unter [MS-XAML] Sections 7.2.6.

x:Decimal

Bei CLR-Sicherung entspricht der x:Decimal Grundtyp Decimal.

Die XAML-Analyse erfolgt inhärent unter en-US Kultur. Unter en-US Kultur ist das richtige Trennzeichen für die Komponenten eines Dezimalzeichens immer ein Punkt (.), unabhängig von den Kultureinstellungen der Entwicklungsumgebung oder vom letztendlichen Clientziel, in dem der XAML-Code zur Laufzeit geladen wird.

Die XAML-Sprachspezifikationsdefinition finden Sie in [MS-XAML] Abschnitten 7.2.14 und 7.4.8.

x:Single

Bei CLR-Sicherung entspricht der x:Single Grundtyp Single.

Neben den numerischen Werten erlaubt die Textsyntax für x:Single auch die Token Infinity, -Infinityund NaN. Diese Token werden als Groß-/Kleinschreibung behandelt.

x:Single können Werte in wissenschaftlicher Schreibweise unterstützen, wenn das erste Zeichen in der Textsyntax e oder Eist.

Die XAML-Sprachspezifikationsdefinition finden Sie in [MS-XAML] Abschnitten 7.2.8 und 7.4.2.

x:Double

Bei CLR-Sicherung entspricht der x:Double Grundtyp Double.

Neben den numerischen Werten erlaubt die Textsyntax für x:Double die Token Infinity, -Infinityund NaN. Diese Token werden als Groß-/Kleinschreibung behandelt.

x:Double können Werte in wissenschaftlicher Schreibweise unterstützen. Verwenden Sie das Zeichen e oder E, um den exponenten Teil einzuführen.

Die XAML-Sprachspezifikationsdefinition finden Sie in [MS-XAML] Abschnitten 7.2.9 und 7.4.3.

x:Int16

Bei CLR-Sicherung entspricht der x:Int16 Grundtyp Int16 und x:Int16 als signiert behandelt wird. In XAML wird das Fehlen eines Pluszeichens (+) der Textsyntax als positiver signierter Wert impliziert.

Die XAML-Sprachspezifikationsdefinition finden Sie in [MS-XAML] Abschnitten 7.2.11 und 7.4.5.

x:Int32

Bei CLR-Sicherung entspricht der x:Int32 Grundtyp Int32. x:Int32 wird als signiert behandelt. In XAML wird das Fehlen eines Pluszeichens (+) der Textsyntax als positiver signierter Wert impliziert.

Die XAML-Sprachspezifikationsdefinition finden Sie in [MS-XAML] Abschnitten 7.2.12 und 7.4.6.

x:Int64

Bei CLR-Sicherung entspricht der x:Int64 Grundtyp Int64. x:Int64 wird als signiert behandelt. In XAML wird das Fehlen eines Pluszeichens (+) der Textsyntax als positiver signierter Wert impliziert.

Die XAML-Sprachspezifikationsdefinition finden Sie in [MS-XAML] Abschnitten 7.2.13 und 7.4.7.

x:TimeSpan

Bei CLR-Sicherung entspricht der x:TimeSpan Grundtyp TimeSpan.

Die XAML-Analyse für das Zeitdatumsformat erfolgt inhärent unter en-US Kultur.

Die XAML-Sprachspezifikationsdefinition finden Sie in [MS-XAML] Abschnitten 7.2.16 und 7.4.10.

x:Uri

Bei CLR-Sicherung entspricht der x:Uri Grundtyp Uri.

Die Überprüfung auf Protokolle ist nicht Teil der XAML-Definition für x:Uri.

Die XAML-Sprachspezifikationsdefinition finden Sie in [MS-XAML] Abschnitten 7.2.15 und 7.4.9.

x:Byte

Bei CLR-Sicherung entspricht der x:Byte Grundtyp Byte. Ein Byte / x:Byte wird als nicht signiert behandelt.

Die XAML-Sprachspezifikationsdefinition finden Sie in [MS-XAML] Abschnitten 7.2.10 und 7.4.4.

x:Array

Bei CLR-Sicherung entspricht der x:Array Grundtyp Array.

Sie können ein Array in XAML 2006 mithilfe einer Markuperweiterungssyntax definieren. Die XAML 2009-Syntax ist jedoch ein sprachdefinierter Grundtyp, der keinen Zugriff auf eine Markuperweiterung erfordert. Weitere Informationen zur XAML 2006-Unterstützung finden Sie unter x:Array Markup Extension.

Die XAML-Sprachspezifikationsdefinition finden Sie unter [MS-XAML] Sections 7.2.18.

WPF-Unterstützung

In WPF können Sie XAML 2009-Features verwenden, jedoch nur für XAML, die nicht markupkompiliert sind. Markupkompiliertes XAML für WPF und die BAML-Form von XAML unterstützen derzeit nicht die XAML 2009-Schlüsselwörter und -Features.

Ein Szenario, in dem Sie XAML 2009-Features zusammen mit WPF verwenden können, ist, wenn Sie lose XAML erstellen und diese XAML dann in eine WPF-Laufzeit- und Objektdiagramm mit XamlReader.Loadladen. Die WPF-System.Windows.Markup.XamlReader und deren Load können XAML 2009-Sprachstichwörter und -Features in einer gültigen Objektdiagrammdarstellung verarbeiten.