FrameworkElement.SetBinding(DependencyProperty, BindingBase) Método

Definición

Adjunta un enlace a frameworkElement mediante el objeto de enlace proporcionado.

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

Parámetros

dp
DependencyProperty

Identificador de propiedad de dependencia de la propiedad enlazada a datos.

binding
BindingBase

Enlace que se va a usar para la propiedad .

Ejemplos

En este ejemplo se establece un enlace a una propiedad de dependencia en un objeto mediante una llamada a SetBinding.

// Create the source string.
string s = "Hello";

// Create the binding description.
Binding b = new Binding();
b.Mode = BindingMode.OneTime;
b.Source = s;

// Attach the binding to the target.
TextBlock MyText = new TextBlock();
MyText.SetBinding(TextBlock.TextProperty, b);
'Create the source string 
Dim s As String = "Hello"

'Create the binding description 
Dim b As New Binding()
b.Mode = BindingMode.OneTime
b.Source = s

'Attach the binding to the target 
Dim MyText As New TextBlock()
MyText.SetBinding(TextBlock.TextProperty, b)

Comentarios

Este método es un método de conveniencia que llama a BindingOperations.SetBinding, pasando la instancia actual como el parámetro de destino .

El tipo del parámetro de enlace es BindingBase por motivos de compatibilidad, pero en el Windows Runtime siempre se pasa una instancia de Binding. El enlace se deriva de BindingBase.

El parámetro dp toma un identificador de propiedad de dependencia. Para obtener más información sobre las propiedades de dependencia y cómo un valor DependencyProperty actúa como identificador, consulte Información general sobre las propiedades de dependencia.

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

Si un enlace creado a partir del código podrá usar un contexto de datos que actúe depende de las consideraciones de duración del objeto. Por ejemplo, un valor DataContext que se establece desde XAML no estará disponible hasta que se analice el XAML. En ese caso, es posible que quiera usar un controlador cargado para agregar enlaces desde el código.

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, dependencyObject admite todas las propiedades adjuntas posibles, pero normalmente solo establecería un enlace en una propiedad adjunta que sea relevante para ese objeto o su 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 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