How to: Create a Binding in Code

This example shows how to create and set a Binding in code.

Example

The FrameworkElement class and the FrameworkContentElement class both expose a SetBinding method. If you are binding an element that inherit either of those classes, you can call the SetBinding method directly, as in following example. In this example, myDataObject is an instance of MyData class and myBinding is the source Binding object. MyData class is a defined class that contains a string property named MyDataProperty. The following example shows how to bind the text content of mytext, an instance of TextBlock, to MyDataProperty.

//make a new source
  MyData myDataObject = new MyData(DateTime.Now);      
  Binding myBinding = new Binding("MyDataProperty");
  myBinding.Source = myDataObject;
  myText.SetBinding(TextBlock.TextProperty, myBinding);
Dim data1 As New MyData(DateTime.Now)
Dim binding1 As New Binding("MyDataProperty")
binding1.Source = data1
Me.myText.SetBinding(TextBlock.TextProperty, binding1)

For the complete code sample, see Code-only Binding Sample.

Alternatively, you can use the SetBinding method of the BindingOperations class. In the following example, myNewBindDef is a Binding object that describes the binding. The binding target is myDateText, an instance of the TextBlock class.

// myDatetext is a TextBlock object that is the binding target object
    BindingOperations.SetBinding(myDateText, TextBlock.TextProperty, myNewBindDef);
    BindingOperations.SetBinding(myDateText, TextBlock.ForegroundProperty, myNewBindDef);

See Also

Concepts

Data Binding Overview

Other Resources

Data Binding Samples
Data Binding How-to Topics