Condividi tramite


Tipo XAML intrinseco x:Code

Consente il posizionamento del codice all'interno di un ambiente di produzione XAML. Tale codice può essere compilato da qualsiasi implementazione del processore XAML che compila XAML o lasciata nell'ambiente di produzione XAML per usi successivi, ad esempio l'interpretazione da parte di un runtime.

Utilizzo della sintassi XAML per gli elementi oggetto

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

Osservazioni

Il codice all'interno dell'elemento x:Code della direttiva XAML viene ancora interpretato all'interno dello spazio dei nomi XML generale e degli spazi dei nomi XAML forniti. Pertanto, in genere è necessario racchiudere il codice usato per x:Code all'interno di un CDATA segmento.

x:Code non è consentito per tutti i possibili meccanismi di distribuzione di una produzione XAML. In framework specifici (ad esempio WPF) il codice deve essere compilato. In altri framework, x:Code l'utilizzo potrebbe in genere non essere consentito.

Per i framework che consentono il contenuto gestito x:Code , il compilatore del linguaggio corretto da usare per x:Code il contenuto è determinato dalle impostazioni e dalle destinazioni del progetto contenitore usato per compilare l'applicazione.

Note sull'utilizzo di WPF

Il codice dichiarato in x:Code per WPF presenta diverse limitazioni rilevanti:

  • L'elemento x:Code direttiva deve essere un elemento figlio immediato dell'elemento radice dell'ambiente di produzione XAML.

  • La direttiva x:Class deve essere specificata nell'elemento radice padre.

  • Il codice inserito all'interno x:Code verrà trattato dalla compilazione in modo che sia compreso nell'ambito della classe parziale già in fase di creazione per tale pagina XAML. Di conseguenza, tutto il codice definito deve essere membro o variabili di tale classe parziale.

  • Non è possibile definire classi aggiuntive, diverse dall'annidamento di una classe all'interno della classe parziale (l'annidamento è consentito, ma non è tipico perché non è possibile fare riferimento alle classi annidate in XAML). Gli spazi dei nomi CLR diversi dallo spazio dei nomi usato per la classe parziale esistente non possono essere definiti o aggiunti a .

  • I riferimenti alle entità di codice all'esterno dello spazio dei nomi CLR parziale della classe devono essere tutti completi. Se i membri dichiarati vengono sottoposti a override ai membri sovrascrivibili della classe parziale, è necessario specificarlo con la parola chiave override specifica del linguaggio. Se i membri dichiarati nell'ambito sono in x:Code conflitto con i membri della classe parziale creata da XAML, in modo che il compilatore segnala il conflitto, il file XAML non può compilare o caricare.

Vedi anche