XAML 2009-Sprachfeatures
XAML 2009 ist der Kurzbegriff für neue XAML-Sprachfeatures, die die vorhandene XAML-Sprachspezifikation erweitern. XAML 2009 führt mehrere neue Direktiven und Konstrukte ein. Dazu gehören die x:Arguments-Richtlinie; die x:FactoryMethod-Richtlinie; die x:Reference Markup Extension; die x:TypeArguments-Direktive; und integrierte Typen für Allgemeine Sprachgrundtypen (z. B. x:Char
).
XAML 2009-Unterstützung in WPF und Visual Studio
In WPF können Sie XAML 2009-Features verwenden, jedoch nur für XAML, das nicht WPF-Markup kompiliert ist. Markupkompiliertes XAML und die BAML-Form von XAML unterstützen derzeit nicht die XAML 2009-Sprachstichwörter und -features.
Beachten Sie, dass vorhandene Techniken zum Laden von losem XAML in WPF auch mögliche Sicherheits- und Zugriffsbeschränkungen für CLR-Typen und das Typsystem haben, die restriktiver sind als für markupkompilierte XAML. Weitere Informationen finden Sie unter Security (WPF) oder WPF Security Strategy - Platform Security.
XAML 2009 führt auch zusätzliche Features ein, die entweder die vorherigen XAML 2006-Konstrukte ändern oder die grundlegende Markupformulare ändern.
x:Key als Objektelement
XAML 2009 kann x:Key
als Objekt unterstützen (ein Eigenschaftselement mit Objektelementwert); XAML 2006 unterstützt jedoch nur x:Key
als Attribut. Weitere Informationen finden Sie im Abschnitt "XAML 2009" x:Key Directive.
xmlns on Property Elements
XAML 2009 kann XAML-Namespacedefinitionen (XMLns) für Eigenschaftselemente unterstützen; XAML 2006 unterstützt jedoch nur XMLns-Definitionen für Objektelemente.
Ereignisattribute
Bei Attributen, die von Ereignissen unterstützt werden, geht XAML 2006 davon aus, dass die Markupkompilierung beteiligt ist und die Ereignisse an die Markupkompilierung übermittelt. XAML 2009 unterstützt ein Markupformular, das einer Markuperweiterung ähnelt, die die Ereignisverkabelung bis zur Laufzeitanalyse und dem Laden des XAML zurückgibt. WPF-Anwendungen und XAML-Szenarien für WPF-Ui verwenden diese Funktion jedoch im Allgemeinen nicht. WPF und seine XAML 2006-Implementierung verwendet die Kombination der Ereignishandlerverknüpfung für Routingereignisse, die auf UIElement-Ebene definiert sind, und den Markupcompilerschritt für einen Großteil der Ereignisattributeverarbeitung. Der Markupcompiler verarbeitet auch alle Ereignisattribute in XAML, in denen die Buildaktionen deklarieren, dass der Markupcompiler verwendet wird.
Siehe auch
.NET Desktop feedback