{} sequência de escape/extensão de marcação
Fornece a sequência de escape XAML para valores de atributo. A sequência de escape permite que os valores subsequentes no atributo sejam interpretados como um literal.
Uso do atributo XAML
<object property="{} literalValue" .../>
Uso do elemento de propriedade XAML
<object>
<object.property>
{} literalValue
</object.property>
</object>
Valores XAML
Valor | Descrição |
---|---|
literalValue | A cadeia de caracteres literal que segue a sequência de escape. Normalmente, essa cadeia de caracteres contém uma chave aberta ou fechada ({ ou }). |
Observações
A sequência de escape ({}) é usada para que uma chave aberta ({) possa ser usada como um caractere literal em XAML.
Os leitores XAML normalmente usam a chave aberta ({) para indicar o ponto de entrada de uma extensão de marcação; no entanto, eles primeiro verificam o próximo caractere para determinar se é uma chave de fechamento (}). Somente quando as duas chaves ({}) são adjacentes, elas são consideradas uma sequência de escape.
Se a sequência de escape for encontrada, o leitor XAML deverá processar o restante da cadeia de caracteres como uma cadeia de caracteres. No entanto, se a sequência de escape for aplicada a um membro que tenha um conversor de tipo, a cadeia de caracteres poderá passar por conversão de tipo quando for interpretada por um gravador XAML.
A sequência de escape não é uma extensão de marcação e não é apoiada por uma classe. No entanto, é uma convenção que os leitores XAML (incluindo leitores XAML personalizados) devem respeitar.
Uma aspa (") não pode ser usada como uma sequência de escape dessa maneira. Se você precisar definir uma aspa como um valor de propriedade para uma propriedade não condizente, use a sintaxe do elemento de propriedade e coloque a aspa como uma cadeia de caracteres dentro do elemento de propriedade ou use uma entidade de caractere XML. Para uma propriedade de conteúdo, a aspa pode ser todo o conteúdo.
A sequência de escape ({}) é frequentemente necessária ao especificar um tipo XML que deve incluir um qualificador de namespace em um local onde uma extensão de marcação XAML pode aparecer. Esse local inclui o início de um valor de atributo XAML e em uma extensão de marcação imediatamente após um sinal de igual (=). O exemplo a seguir mostra sequências de escape para um namespace XML que aparece no início de um valor de atributo XAML.
<StackPanel Name="stacky">
<StackPanel.Resources>
<DataTemplate DataType="{}{http://planetsNS}Planet" >
<StackPanel Orientation="Horizontal">
<TextBlock Width="100" Text="{Binding Path=Element[{http://planetsNS}DiameterKM].Value}" />
<TextBlock Width="100" Text="{Binding Path=Attribute[Name].Value}" />
<TextBlock Text="{Binding Path=Element[{http://planetsNS}Details].Value}" />
</StackPanel>
</DataTemplate>
</StackPanel.Resources>
Consulte também
- Conversores de tipo e extensões de marcação para XAML
- entidades de caractere XML e XAML
.NET Desktop feedback