Partilhar via


Binding.RelativeSource Propriedade

Definição

Obtém ou define a origem da associação, especificando seu local com relação à posição do destino da associaçã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 da propriedade

RelativeSource

Um objeto RelativeSource que especifica o local relativo da origem da associação a ser usada. O padrão é null.

Exemplos

O exemplo a seguir mostra um gatilho de estilo que cria uma ToolTip mensagem de erro de validação. O valor do setter se associa ao conteúdo de erro do atual TextBox (o TextBox uso do estilo) usando a RelativeSource propriedade. Para obter mais informações sobre este exemplo, consulte Como implementar a validação de associaçã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, consulte Exemplo de Validação de Associação.

Comentários

Essa propriedade é comumente usada para associar uma propriedade de um objeto a outra propriedade do mesmo objeto ou para definir uma associação em um estilo ou modelo.

Por padrão, as associações herdam o contexto de dados especificado pela DataContext propriedade, se um tiver sido definido. No entanto, a RelativeSource propriedade é uma das maneiras de definir explicitamente a origem de um Binding e substituir o contexto de dados herdado. Para obter mais informações, consulte Como especificar a origem da associação.

As Binding.ElementName propriedades e as Binding.Source propriedades também permitem que você defina explicitamente a origem da associação. No entanto, apenas uma das três propriedades, ElementNamee SourceRelativeSource, deve ser definida para cada associação ou um conflito pode ocorrer. Essa propriedade gerará uma exceção se houver um conflito de origem de associação.

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

Aplica-se a

Confira também