Compartir a través de


Extensión de marcado RelativeSource

Actualización: noviembre 2007

Especifica las propiedades de un origen de enlace de RelativeSource, para su uso en una Enlazar extensión de marcado, o al establecer la propiedad RelativeSource de un elemento Binding establecido en XAML.

Uso de atributos XAML

<Binding RelativeSource="{RelativeSource modeEnumValue}" .../>

Uso de atributos XAML (anidados en la extensión de enlace)

<object property="{Binding RelativeSource={RelativeSource modeEnumValue} ...}" .../>

Uso de elementos de objeto XAML

<Binding>
  <Binding.RelativeSource>
    <RelativeSource Mode="modeEnumValue"/>
  </Binding.RelativeSource>
</Binding>
- or 
<Binding>
  <Binding.RelativeSource>
    <RelativeSource
      Mode="FindAncestor"
      AncestorType="{x:Type typeName}"
      AncestorLevel="intLevel"
    />
  </Binding.RelativeSource>
</Binding>

Valores XAML

modeEnumValue

Una de las aplicaciones siguientes:

  • Token de cadena Self; corresponde a un objeto RelativeSource creado con su propiedad Mode establecida en Self.

  • Token de cadena TemplatedParent; corresponde a un objeto RelativeSource creado con su propiedad Mode establecida en TemplatedParent.

  • Token de cadena PreviousData; corresponde a un objeto RelativeSource creado con su propiedad Mode establecida en PreviousData.

  • Vea más adelante la información sobre el modo FindAncestor.

FindAncestor

Token de cadena FindAncestor. Al utilizar este token, se entra en un modo en que RelativeSource especifica un tipo de antecesor y, opcionalmente, un nivel del antecesor. Corresponde a un RelativeSource creado con su propiedad Mode establecida en FindAncestor.

typeName

Necesario para el modo FindAncestor. El nombre de un tipo, que rellena la propiedad AncestorType.

intLevel

Opcional para el modo FindAncestor. Un nivel del antecesor (se evalúa en la dirección del elemento primario en el árbol lógico).

Comentarios

En la sintaxis de elementos de objeto para el modo FindAncestor que se muestra anteriormente, la segunda sintaxis de elementos de objeto se utiliza específicamente para el modo FindAncestor. El modo FindAncestor requiere un valor de AncestorType. Debe establecer AncestorType como atributo utilizando una referencia de Extensión de marcado x:Type al tipo de antecesor que se desea buscar. Se utiliza el valor AncestorType al procesar la solicitud de enlace en tiempo de ejecución.

Para el modo FindAncestor, la propiedad AncestorLevel opcional puede ayudar a eliminar la ambigüedad en la búsqueda del antecesor en aquellos casos en que sea posible que exista más de un antecesor de ese tipo en el árbol de elementos.

Para obtener más detalles sobre cómo utilizar el modo FindAncestor, vea RelativeSource

La descripción del concepto de enlace de datos no se incluye aquí, vea Información general sobre el enlace de datos.

La clase RelativeSource define el control para esta extensión de marcado en la implementación del procesador XAML de WPF.

RelativeSource es una extensión de marcado. Las extensiones de marcado se suelen implementar cuando se necesita que los valores de los atributos de escape no sean valores literales o nombres de controladores, y este requisito es de índole más global que limitarse a colocar los convertidores de tipos en determinados tipos o propiedades. Todas las extensiones de marcado de XAML utilizan los caracteres { y } en su sintaxis de atributo, que es la convención que permite que un procesador XAML reconozca que el atributo se debe procesar mediante una extensión de marcado. Para obtener más información, vea Extensiones de marcado y XAML.

Vea también

Conceptos

Aplicar estilos y plantillas

Información general sobre XAML

Extensiones de marcado y XAML

Información general sobre el enlace de datos

Información general sobre declaraciones de enlaces

Referencia

Binding

Extensión de marcado x:Type