Compartilhar via


Tipos internos primitivos comum de linguagem XAML

XAML 2009 introduz o suporte de nível de linguagem XAML para vários tipos de dados primitivos usados com freqüência no common language runtime (CLR) e em outras linguagens de programação. XAML 2009 adiciona suporte para esses primitivos: x:Object, x:Boolean, x:Char, x:String, x:Decimal, x:Single, x:Double, x:Int16, x:Int32, x:Int64, x:TimeSpan, x:Uri, x:Byte, and x:Array

Este tópico contém as seguintes seções.

  • Técnicas anteriores primitivos de linguagem de marcação XAML
  • Primitivos de linguagem XAML 2009
  • WPF Support

Técnicas anteriores primitivos de linguagem de marcação XAML

Em XAML para versões anteriores do WPF, é possível fazer referência os primitivos de idioma do CLR, mapeando o assembly e namespace que continha uma classe de definição de primitivos de CLR para o.NET Framework. A maioria deles está no assembly mscorlib e System namespace. Por exemplo, para usar Int32, você poderia declarar o seguinte mapeamento (com um exemplo de uso mostrado posteriormente):

<Application xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml" 
xmlns:sys="clr-namespace:System;assembly=mscorlib">
  <Application.Resources>
    <sys:Int32 x:Key="intMeaning">42</sys:Int32>
  </Application.Resources>
</Application>

Primitivos de linguagem XAML 2009

Por convenção, os primitivos da linguagem XAML e todos os outros elementos de linguagem XAML são mostrados, incluindo o x: prefixo. Isso é como os elementos de linguagem XAML normalmente são usados na marcação do mundo real. Esta convenção é seguida na documentação conceitual para XAML no WPF e também na especificação XAML.

x: objeto

Para fazer o CLR, o x:Object primitivo corresponde a Object.

Esse primitivo não é normalmente usado na marcação de aplicativo, mas pode ser útil para alguns cenários como, por exemplo, a verificação de assignability em um sistema de tipos XAML.

x: Boolean

Para fazer o CLR, o x:Boolean primitivo corresponde a Boolean.

XAML analisa os valores para x:Boolean como maiúsculas de minúsculas. Observe que x:Bool não é um aceito alternativa. Para a definição de especificação de linguagem XAML, consulte seções [MS-XAML], 5.2.17 e 5.4.11.

x: Char.

Para fazer o CLR, o x:Char primitivo corresponde a Char.

Os tipos de cadeia de caracteres e char têm interação com a codificação geral do arquivo no nível do XML. Para a definição de especificação de linguagem XAML, consulte [MS-XAML] seções 5.4.1 e 5.2.7.

x: String.

Para fazer o CLR, o x:String primitivo corresponde a String.

Os tipos de cadeia de caracteres e char têm interação com a codificação geral do arquivo no nível do XML. Para a definição de especificação de linguagem XAML, consulte [MS-XAML] seções 5.2.6.

x: Decimal.

Para fazer o CLR, o x:Decimal primitivo corresponde a Decimal.

Observe que a análise de XAML é inerentemente feita sob en-US cultura. Em en-US a cultura, o separador correto para os componentes de um número decimal é sempre um período (.) independentemente das configurações de cultura do ambiente de desenvolvimento ou de destino eventual cliente onde o XAML é carregado no tempo de execução.

Para a definição de especificação de linguagem XAML, consulte seções [MS-XAML], 5.2.14 e 5.4.8.

x: único.

Para fazer o CLR, o x:Single primitivo corresponde a Single.

Além de para os valores numéricos, a sintaxe de texto para x:Single também permite que os tokens de Infinity, -Infinity, e NaN. Esses tokens são tratados como diferencia maiúsculas de minúsculas.

x:Singlepode oferecer suporte valores no formulário de notação científica, se o primeiro caractere na sintaxe de texto é e ou E.

Para a definição de especificação de linguagem XAML, consulte [MS-XAML] seções 5.4.2 e 5.2.8.

x: duplo

Para fazer o CLR, o x:Double primitivo corresponde a Double.

Além de para os valores numéricos, a sintaxe de texto para x:Double permite que os tokens de Infinity, -Infinity, e NaN. Esses tokens são tratados como diferencia maiúsculas de minúsculas.

x:Doublepode suportar valores no formulário de notação científica, se o primeiro caractere na sintaxe de texto é e ou E.

Para a definição de especificação de linguagem XAML, consulte [MS-XAML] seções 5.4.3 e 5.2.9.

x: Int16.

Para fazer o CLR, o x:Int16 primitivo corresponde a Int16 e x:Int16 é tratado como assinados. No XAML, a ausência de um sinal de mais (+) o sinal na sintaxe de texto está implícito um positivo assinado valor.

Para a definição de especificação de linguagem XAML, consulte seções [MS-XAML], 5.2.11 e 5.4.5.

x: Int32.

Para fazer o CLR, o x:Int32 primitivo corresponde a Int32. x:Int32é tratada como assinados. No XAML, a ausência de um sinal de mais (+) o sinal na sintaxe de texto está implícito um positivo assinado valor.

Para a definição de especificação de linguagem XAML, consulte seções [MS-XAML], 5.2.12 e 5.4.6.

x: Int64.

Para fazer o CLR, o x:Int64 primitivo corresponde a Int64. x:Int64é tratada como assinados. No XAML, a ausência de um sinal de mais (+) o sinal na sintaxe de texto está implícito um positivo assinado valor.

Para a definição de especificação de linguagem XAML, consulte seções [MS-XAML], 5.2.13 e 5.4.7.

x: TimeSpan.

Para fazer o CLR, o x:TimeSpan primitivo corresponde a TimeSpan.

Observe que análise de XAML para o formato de data / hora é inerentemente feito em en-US cultura.

Para a definição de especificação de linguagem XAML, consulte [MS-XAML] seções 5.2.16 e 5.4.10.

x: Uri.

Para fazer o CLR, o x:Uri primitivo corresponde a Uri.

Verificação de protocolos não é parte da definição XAML para x:Uri.

Para a definição de especificação de linguagem XAML, consulte seções [MS-XAML], 5.2.15 e 5.4.9.

x: bytes.

Para fazer o CLR, o x:Byte primitivo corresponde a Byte. A Byte / x:Byte é tratado como unsigned.

Para a definição de especificação de linguagem XAML, consulte [MS-XAML] seções 5.4.4 e 5.2.10.

x: matriz.

Para fazer o CLR, o x:Array primitivo corresponde a Array.

Você pode definir uma matriz em 2006 em XAML usando uma sintaxe de extensão de marcação; No entanto, a sintaxe XAML 2009 é um primitivo idioma definido que não necessitem de acesso a uma extensão de marcação. Para obter mais informações sobre o suporte de XAML de 2006, consulte x:Array de marcação de extensão.

Para a definição de especificação de linguagem XAML, consulte [MS-XAML] seções 5.2.18.

WPF Support

No WPF, você pode usar o recursos de 2009 de XAML, mas apenas para o XAML não é marcação-compilado. Compilado de marcação XAML para WPF e o formulário BAML do XAML não suportam atualmente os recursos e palavras-chave de XAML de 2009.

Um cenário onde você pode usar os recursos de 2009 de XAML com o WPF é se o autor do XAML livre e carregar, em seguida, esse XAML em um gráfico de tempo de execução e o objeto do WPF com XamlReader.Load. O WPF System.Windows.Markup.XamlReader e seus Load pode processar o XAML 2009 palavras-chave e recursos em uma representação de gráfico de objeto válido.