Delen via


x:Code Intrinsiek XAML-type

Hiermee staat u de plaatsing van code binnen een XAML-productie toe. Dergelijke code kan worden gecompileerd door elke XAML-processor-implementatie die XAML compileert of overblijft in de XAML-productie voor later gebruik, zoals interpretatie door een runtime.

Gebruik van XAML-objectelementen

<x:Code>
   // code instructions, usually enclosed by CDATA...
</x:Code>

Opmerkingen

De code binnen het element x:Code XAML-instructie wordt nog steeds geïnterpreteerd binnen de algemene XML-naamruimte en de XAML-naamruimten die worden opgegeven. Daarom is het meestal nodig om de code die wordt gebruikt voor x:Code in een CDATA segment te sluiten.

x:Code is niet toegestaan voor alle mogelijke implementatiemechanismen van een XAML-productie. In specifieke frameworks (bijvoorbeeld WPF) moet de code worden gecompileerd. In andere frameworks is x:Code gebruik over het algemeen niet toegestaan.

Voor frameworks die beheerde x:Code inhoud toestaan, wordt de juiste taalcompilator voor x:Code inhoud bepaald door instellingen en doelen van het betreffende project dat wordt gebruikt om de toepassing te compileren.

Opmerkingen bij WPF-gebruik

Code die binnen x:Code voor WPF is gedeclareerd, heeft verschillende belangrijke beperkingen:

  • Het element x:Code richtlijn moet een onmiddellijk onderliggend element zijn van het hoofdelement van de XAML-productie.

  • x:Class Directive moet worden opgegeven op het bovenliggende hoofdelement.

  • De code die in x:Code wordt geplaatst, wordt behandeld door compilatie die binnen het bereik van de gedeeltelijke klasse valt die al voor die XAML-pagina wordt gemaakt. Daarom moet alle code die u definieert leden of variabelen van die gedeeltelijke klasse zijn.

  • U kunt geen extra klassen definiëren, behalve door een klasse in de gedeeltelijke klasse te nesten (nesten is toegestaan, maar dit is niet gebruikelijk omdat er niet naar geneste klassen kan worden verwezen in XAML). ANDERE CLR-naamruimten dan de naamruimte die wordt gebruikt voor de bestaande gedeeltelijke klasse, kunnen niet worden gedefinieerd of toegevoegd aan.

  • Verwijzingen naar code-entiteiten buiten de gedeeltelijke clr-naamruimte van de klasse moeten allemaal volledig zijn gekwalificeerd. Als leden die worden gedeclareerd, onderdrukkingen zijn voor de gedeeltelijke klasse overschrijfbare leden, moet dit worden opgegeven met het taalspecifieke onderdrukkingswoord. Als leden die zijn gedeclareerd in x:Code bereik conflicteren met leden van de gedeeltelijke klasse die zijn gemaakt uit de XAML, op een zodanige manier dat de compiler het conflict rapporteert, kan het XAML-bestand niet compileren of laden.

Zie ook