BindingOperations.SetBinding Método

Definición

Asocia un enlace a una propiedad de destino en un objeto de destino. Este método es el código equivalente al uso de una extensión de marcado {Binding} en el marcado 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

Objeto que debe ser el destino del enlace evaluado.

dp
DependencyProperty

Propiedad del destino que se va a enlazar, especificada por su identificador. Estos identificadores suelen estar disponibles como propiedades estáticas de solo lectura en el tipo que define el objeto de destino o uno de sus tipos base. También puede enlazar a propiedades adjuntas, pero vea Comentarios.

binding
BindingBase

Enlace que se va a asignar a la propiedad de destino. Este enlace debe inicializarse: las propiedades de enlace importantes, como Path , ya deben establecerse antes de pasarlo como el parámetro .

Comentarios

Puede enlazar a propiedades de dependencia personalizadas o propiedades adjuntas personalizadas, el identificador que se pasa como el parámetro dp no tiene que ser una propiedad definida Windows Runtime.

BindingOperations.SetBinding es un método de utilidad estático y hace básicamente lo mismo que FrameworkElement.SetBinding. Es más común usar FrameworkElement.SetBinding porque es un método de instancia. Sin embargo, una diferencia importante es que BindingOperations.SetBinding puede usar un valor de destino de cualquier DependencyObject, mientras que FrameworkElement.SetBinding solo se puede usar por definición para un destino FrameworkElement . Esto no suele importar para la mayoría de las clases Windows Runtime usadas para la interfaz de usuario XAML, ya que son principalmente subclases FrameworkElement de todos modos. Sin embargo, la distinción puede ser importante si tiene como destino enlaces en sus propias clases personalizadas que derivan de DependencyObject o UIElement.

Nota:

Llamar al método SetBinding y pasar un nuevo objeto Binding no eliminará necesariamente un enlace existente. En su lugar, primero debe llamar al método DependencyObject.ClearValue y, a continuación, llamar a SetBinding.

Enlace a propiedades adjuntas

Puede colocar enlaces de datos en las propiedades adjuntas que admita un objeto de destino. Técnicamente, un DependencyObject admite todas las propiedades adjuntas posibles, pero normalmente solo establecería un enlace en una propiedad adjunta relevante para ese objeto o escenario. Por ejemplo, establecería un enlace en Grid.Row solo si prevé que el elemento de destino tiene un elemento primario Grid que usará esa información. Especifique el parámetro dp como el identificador de propiedad de dependencia que existe en la clase de propietario de la propiedad adjunta (para el ejemplo Grid.Row , ese identificador es Grid.RowProperty). No encontrará ese identificador en el destino porque es una propiedad adjunta. Para obtener más información sobre las propiedades adjuntas, consulta Información general sobre las propiedades adjuntas.

Se aplica a

Consulte también