MarkupExtension do RelativeSource
Especifica propriedades de uma fonte de associação RelativeSource, para serem usadas em um Ligação de marcação de extensão, ou quando configurando a propriedade RelativeSource de um elemento Binding estabelecido em XAML.
Uso de atributos XAML
<Binding RelativeSource="{RelativeSource modeEnumValue}" .../>
Usado de Atributo XAML (aninhado em uma extensão Binding)
<object property="{Binding RelativeSource={RelativeSource modeEnumValue} ...}" .../>
Uso do elemento Object em 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 de XAML
modeEnumValue |
Um dos seguintes:
|
FindAncestor |
O token de string FindAncestor. Usando este token entra-se em um modo, enquanto um RelativeSource especifica um tipo de ancestral e opcionalmente um nível de ancestral. Isto corresponde a um RelativeSource como criado por sua propriedade Mode definida como FindAncestor . |
typeName |
Necessário para o modo FindAncestor. O nome de um tipo, que preenche a propriedade AncestorType. |
intLevel |
Opcional para o modo FindAncestor. Um nível de ancestral (avaliado de acordo com a direção do pai na árvore lógica). |
Comentários
Na sintaxe de elemento de objeto para FindAncestor modo mostrado acima, a sintaxe de elemento segunda objeto usada especificamente para FindAncestor modo. FindAncestor modo requer um AncestorType valor. Você deve definir AncestorType como um atributo usando a referência Marcação de Extensão x:Type para o tipo de ancestral a ser procurado. O valor AncestorType é usado quando a requisição de associação é processada em tempo de execução.
Para o modo FindAncestor, a propriedade opcional AncestorLevel pode ajudar a desambiguar a consulta de ancestral em casos onde existe possivelmente mais de um ancestral daquele tipo na árvore de elemento.
Para mais detalhes sobre o modo FindAncestor, consulte RelativeSource.
Descrever o conceito de associação de dados não é abordado aqui, consulte Revisão de Associação de Dados.
Na implementação de processador XAML WPF, o tratamento para esta extensão de marcação é definida pela classe RelativeSource.
RelativeSource é uma extensão de marcação. Extensões de marcação são tipicamente implementadas quando existe um requisito de escapar valores de atributo para serem diferentes de valores literais ou nomes de manipuladores, e o requisito é mais global do que simplesmente colocar conversores de tipo em certos tipos ou propriedades. Todas as extensões de marcação no XAML usam os caracteres { e } em sua sintaxe de atributo, que é a convenção pela qual o processador XAML reconhece que uma extensão de markup precisa processar o atributo. Para obter mais informações, consulte Extensão de Marcação e XAML.
Consulte também
Conceitos
Revisão de Associação de Dados
Resumo de Declaração de Associações