x:Code Systeminterner XAML-Typ
Ermöglicht die Platzierung von Code in einer XAML-Produktion. Dieser Code kann entweder von jeder XAML-Prozessorimplementierung kompiliert werden, die XAML kompiliert oder in der XAML-Produktion für spätere Verwendungen, z. B. interpretation durch eine Laufzeit, übrig bleibt.
XAML-Objektelementverwendung
<x:Code>
// code instructions, usually enclosed by CDATA...
</x:Code>
Bemerkungen
Der Code innerhalb des x:Code
XAML-Direktivenelements wird weiterhin im allgemeinen XML-Namespace und den bereitgestellten XAML-Namespaces interpretiert. Daher ist es in der Regel erforderlich, den für x:Code
in einem CDATA
Segment verwendeten Code einzuschließen.
x:Code
ist für alle möglichen Bereitstellungsmechanismen einer XAML-Produktion nicht zulässig. In bestimmten Frameworks (z. B. WPF) muss der Code kompiliert werden. In anderen Frameworks ist x:Code
Nutzung im Allgemeinen unzulässig.
Für Frameworks, die verwaltete x:Code
Inhalt zulassen, wird der richtige Sprachcompiler für x:Code
Inhalt durch Einstellungen und Ziele des enthaltenden Projekts bestimmt, das zum Kompilieren der Anwendung verwendet wird.
WPF-Verwendungshinweise
Code, der in x:Code
für WPF deklariert wurde, weist mehrere wichtige Einschränkungen auf:
Das
x:Code
Direktivenelement muss ein unmittelbares untergeordnetes Element des Stammelements der XAML-Produktion sein.x:Class Directive muss für das übergeordnete Stammelement bereitgestellt werden.
Der in
x:Code
platzierte Code wird von der Kompilierung behandelt, um sich im Bereich der Teilklasse zu befinden, die bereits für diese XAML-Seite erstellt wird. Daher muss es sich bei allen code, den Sie definieren, um Member oder Variablen dieser partiellen Klasse handeln.Sie können keine zusätzlichen Klassen definieren, außer durch das Schachteln einer Klasse innerhalb der partiellen Klasse (Schachtelung ist zulässig, aber es ist nicht typisch, da in XAML nicht auf geschachtelte Klassen verwiesen werden kann). CLR-Namespaces außer dem Namespace, der für die vorhandene partielle Klasse verwendet wird, können nicht definiert oder hinzugefügt werden.
Verweise auf Codeentitäten außerhalb des partiellen CLR-Namespaces müssen vollständig qualifiziert sein. Wenn Member deklariert werden, überschrieben werden, muss dies mit dem sprachspezifischen Überschreibungsschlüsselwort angegeben werden. Wenn Elemente, die in
x:Code
Bereich deklariert wurden, mit Mitgliedern der partiellen Klasse in Konflikt geraten, die aus dem XAML erstellt wurden, so dass der Compiler den Konflikt meldet, kann die XAML-Datei nicht kompiliert oder geladen werden.
Siehe auch
.NET Desktop feedback