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);