{} Secuencia de escape / extensión de marcado

Proporciona la secuencia de escape XAML para los valores de atributo. La secuencia de escape permite que los valores subsiguientes en el atributo se interpreten como un literal.

Uso de atributos XAML

<object property="{} literalValue" .../>

Uso de elementos de propiedad XAML

<object>
  <object.property>
    {} literalValue
  </object.property>
</object>

Valores XAML

Value Descripción
literalValue La cadena literal que sigue a la secuencia de escape. Normalmente, esta cadena contiene una llave de apertura o cierre ({ o }).

Comentarios

La secuencia de escape ({}) se usa para que se pueda usar una llave abierta ({) como carácter literal en XAML.

Normalmente, los lectores XAML usan la llave abierta ({) para indicar el punto de entrada de una extensión de marcado; sin embargo, primero comprueban el siguiente carácter para determinar si es una llave de cierre (}). Solo cuando las dos llaves ({}) son adyacentes se consideran una secuencia de escape.

Si se encuentra la secuencia de escape, el lector XAML debe procesar el resto de la cadena como una cadena. Sin embargo, si la secuencia de escape se aplica a un miembro que tiene un convertidor de tipos, la cadena podría someterse a la conversión de tipos cuando se interpreta mediante un escritor XAML.

La secuencia de escape no es una extensión de marcado y no está respaldada por una clase. Sin embargo, es una convención que deben respetar los lectores XAML (incluidos los lectores XAML personalizados).

Una comilla (") no se puede usar como una secuencia de escape de esta manera. Si necesita establecer una comilla como un valor de propiedad para una propiedad que no tiene relación con el contenido, use la sintaxis del elemento de propiedad y coloque las comillas como una cadena dentro del elemento de propiedad o use una entidad de caracteres XML. Para una propiedad de contenido, la comilla puede ser todo el contenido.

La secuencia de escape ({}) suele ser necesaria al especificar un tipo XML que debe incluir un calificador de espacio de nombres en una ubicación donde puede aparecer una extensión de marcado XAML. Esta ubicación incluye el inicio de un valor de atributo XAML y en una extensión de marcado se coloca inmediatamente después de un signo igual (=). En el ejemplo siguiente se muestran secuencias de escape para un espacio de nombres XML que aparece al principio de un 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>

Vea también