Compartilhar via


BindingOperations.SetBinding Método

Definição

Associa uma Associação a uma propriedade de destino em um objeto de destino. Esse método é o equivalente ao código para usar uma extensão de marcação {Binding} na marcação XAML.

 static void SetBinding(DependencyObject const& target, DependencyProperty const& dp, BindingBase const& binding);
public static void SetBinding(DependencyObject target, DependencyProperty dp, BindingBase binding);
function setBinding(target, dp, binding)
Public Shared Sub SetBinding (target As DependencyObject, dp As DependencyProperty, binding As BindingBase)

Parâmetros

target
DependencyObject

O objeto que deve ser o destino da associação avaliada.

dp
DependencyProperty

A propriedade no destino a ser associada, especificada por seu identificador. Esses identificadores geralmente estão disponíveis como propriedades estáticas somente leitura no tipo que define o objeto de destino ou um de seus tipos base. Você também pode associar a propriedades anexadas, mas consulte Comentários.

binding
BindingBase

A associação a ser atribuída à propriedade de destino. Essa Associação deve ser inicializada: propriedades de associação importantes, como Path , já devem ser definidas antes de passá-la como o parâmetro .

Comentários

Você pode associar a propriedades de dependência personalizadas ou propriedades anexadas personalizadas, o identificador que você passa como o parâmetro dp não precisa ser uma propriedade definida Windows Runtime.

BindingOperations.SetBinding é um método de utilitário estático e faz basicamente a mesma coisa que FrameworkElement.SetBinding. É mais comum usar FrameworkElement.SetBinding porque é um método de instância. Porém, uma diferença importante é que BindingOperations.SetBinding pode usar um valor de destino de qualquer DependencyObject, enquanto FrameworkElement.SetBinding só pode ser usado por definição para um destino FrameworkElement . Isso geralmente não importa para a maioria das classes Windows Runtime usadas para a interface do usuário XAML, pois elas são principalmente subclasses FrameworkElement de qualquer maneira. Mas a distinção pode importar se você estiver direcionando associações em suas próprias classes personalizadas que derivam de DependencyObject ou UIElement.

Observação

Chamar o método SetBinding e passar um novo objeto Binding não necessariamente removerá uma associação existente. Em vez disso, você deve primeiro chamar o método DependencyObject.ClearValue e, em seguida, chamar SetBinding.

Associação a propriedades anexadas

Você pode colocar associações de dados em todas as propriedades anexadas às quais um objeto de destino dá suporte. Tecnicamente, um DependencyObject dá suporte a todas as propriedades anexadas possíveis, mas você normalmente definiria apenas uma associação em uma propriedade anexada que seja relevante para esse objeto ou seu cenário. Por exemplo, você definiria uma associação em Grid.Row somente se antecipasse que o elemento de destino tem um pai Grid que usará essas informações. Especifique o parâmetro dp como o identificador de propriedade de dependência que existe na classe de proprietário da propriedade anexada (para o exemplo Grid.Row , esse identificador é Grid.RowProperty). Você não encontrará esse identificador no destino porque ele é uma propriedade anexada. Para obter mais informações sobre propriedades anexadas, consulte Visão geral das propriedades anexadas.

Aplica-se a

Confira também