Binding.RelativeSource Propriedade

Definição

Obtém ou define a fonte de ligação especificando a sua localização em relação à posição do alvo de ligação.

public:
 property System::Windows::Data::RelativeSource ^ RelativeSource { System::Windows::Data::RelativeSource ^ get(); void set(System::Windows::Data::RelativeSource ^ value); };
public System.Windows.Data.RelativeSource RelativeSource { get; set; }
member this.RelativeSource : System.Windows.Data.RelativeSource with get, set
Public Property RelativeSource As RelativeSource

Valor de Propriedade

Um objeto que especifica a localização relativa da fonte de RelativeSource ligação a utilizar. A predefinição é null.

Exemplos

O exemplo seguinte mostra um disparador de estilo que cria uma ToolTip e que reporta uma mensagem de erro de validação. O valor do setter liga-se ao conteúdo de erro da corrente TextBox (usando TextBox o estilo) usando a RelativeSource propriedade. Para mais informações sobre este exemplo, veja Como: Implementar a Validação de Vinculação.

<Style x:Key="textBoxInError" TargetType="{x:Type TextBox}">
  <Style.Triggers>
    <Trigger Property="Validation.HasError" Value="true">
      <Setter Property="ToolTip"
        Value="{Binding RelativeSource={x:Static RelativeSource.Self},
                        Path=(Validation.Errors)/ErrorContent}"/>
    </Trigger>
  </Style.Triggers>
</Style>

Para ver o exemplo completo, veja Amostra de Validação de Ligação.

Observações

Esta propriedade é frequentemente usada para atribuir uma propriedade de um objeto a outra propriedade do mesmo objeto, ou para definir uma ligação num estilo ou modelo.

Por defeito, as ligações herdam o contexto de dados especificado pela DataContext propriedade, se uma tiver sido definida. No entanto, a RelativeSource propriedade é uma das formas de definir explicitamente a fonte de um Binding e sobrescrever o contexto de dados herdado. Para mais informações, veja Como: Especificar a Fonte de Ligação.

As Binding.ElementName propriedades e Binding.Source também permitem definir explicitamente a fonte da ligação. No entanto, apenas uma das três propriedades, ElementName, Source, e RelativeSource, deve ser definida para cada ligação, caso contrário pode ocorrer um conflito. Esta propriedade cria uma exceção se houver um conflito de fonte de ligação.

Para informações sobre XAML, consulte RelativeSource MarkupExtension.

Aplica-se a

Ver também