Binding.RelativeSource Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define a origem da associação especificando seu local em relação à posição do destino de 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
Um RelativeSource objeto que especifica o local relativo da fonte de associação a ser usada. O padrão é null.
Exemplos
O exemplo a seguir mostra um gatilho de estilo que cria um ToolTip que relata uma mensagem de erro de validação. O valor do setter se associa ao conteúdo de erro do atual TextBox (o uso do TextBox 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 pelas quais você pode 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 a origem da associação explicitamente. 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 sobre XAML, consulte RelativeSource MarkupExtension.