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