Condividi tramite


Binding.RelativeSource Proprietà

Definizione

Ottiene o imposta l'origine di associazione specificandone il percorso in relazione alla posizione della destinazione del binding.

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

Valore della proprietà

RelativeSource

Oggetto RelativeSource che specifica il percorso relativo dell'origine del binding da usare. Il valore predefinito è null.

Esempio

Nell'esempio seguente viene illustrato un trigger di stile che crea un ToolTip oggetto che segnala un messaggio di errore di convalida. Il valore del setter viene associato al contenuto di errore dell'oggetto TextBox corrente TextBox (utilizzando lo stile) utilizzando la RelativeSource proprietà . Per altre informazioni su questo esempio, vedere Procedura: Implementare la convalida dell'associazione.

<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>

Per visualizzare l'esempio completo, vedere Esempio di convalida dell'associazione.

Commenti

Questa proprietà viene comunemente utilizzata per associare una proprietà di un oggetto a un'altra proprietà dello stesso oggetto o per definire un'associazione in uno stile o un modello.

Per impostazione predefinita, le associazioni ereditano il contesto dati specificato dalla DataContext proprietà , se ne è stato impostato uno. Tuttavia, la RelativeSource proprietà è uno dei modi in cui è possibile impostare in modo esplicito l'origine di un Binding oggetto ed eseguire l'override del contesto dati ereditato. Per altre informazioni, vedere Procedura: Specificare l'origine dell'associazione.

Le Binding.ElementName proprietà e Binding.Source consentono anche di impostare l'origine dell'associazione in modo esplicito. Tuttavia, solo una delle tre proprietà, ElementName, Sourcee RelativeSource, deve essere impostata per ogni associazione oppure può verificarsi un conflitto. Questa proprietà genera un'eccezione se si verifica un conflitto di origine dell'associazione.

Per informazioni XAML, vedi RelativeSource MarkupExtension.

Si applica a

Vedi anche