Tipo intrínseco x:Code (XAML)

Permite o posicionamento de código em uma produção XAML. Esse código pode ser compilado por qualquer implementação de processador XAML que compile XAML ou deixado na produção XAML para usos posteriores, como interpretação por um tempo de execução.

Uso de elemento Object do XAML

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

Comentários

O código dentro do elemento de diretiva XAML ainda é interpretado dentro do x:Code namespace XML geral e dos namespaces XAML fornecidos. Portanto, geralmente é necessário incluir o código usado para x:Code dentro de um CDATA segmento.

x:Code não é permitido para todos os mecanismos de implantação possíveis de uma produção XAML. Em estruturas específicas (por exemplo, WPF) o código deve ser compilado. Em outras estruturas, x:Code o uso pode ser geralmente proibido.

Para estruturas que permitem conteúdo gerenciado x:Code , o compilador de linguagem correto a ser usado para x:Code conteúdo é determinado pelas configurações e destinos do projeto que contém que é usado para compilar o aplicativo.

Notas de uso do WPF

O código declarado dentro x:Code do WPF tem várias limitações notáveis:

  • O x:Code elemento directive deve ser um elemento filho imediato do elemento raiz da produção XAML.

  • x:Class A diretiva deve ser fornecida no elemento raiz pai.

  • O código colocado dentro será tratado pela compilação para estar dentro x:Code do escopo da classe parcial que já está sendo criada para essa página XAML. Portanto, todo o código definido deve ser membros ou variáveis dessa classe parcial.

  • Você não pode definir classes adicionais, a não ser aninhando uma classe dentro da classe parcial (o aninhamento é permitido, mas não é típico porque as classes aninhadas não podem ser referenciadas em XAML). Namespaces CLR diferentes do namespace usado para a classe parcial existente não podem ser definidos ou adicionados.

  • As referências a entidades de código fora do namespace CLR de classe parcial devem ser totalmente qualificadas. Se os membros que estão sendo declarados forem substituições para os membros substituíveis de classe parcial, isso deverá ser especificado com a palavra-chave de substituição específica do idioma. Se os membros declarados no escopo entrarem em x:Code conflito com membros da classe parcial criada a partir do XAML, de tal forma que o compilador relate o conflito, o arquivo XAML não poderá compilar ou carregar.

Confira também