0

我正在尝试从代码创建绑定。MSDN 给出了这个例子:

MyData myDataObject = new MyData(DateTime.Now);      
Binding myBinding = new Binding("MyDataProperty");  
myBinding.Source = myDataObject;    
myText.SetBinding(TextBlock.TextProperty, myBinding);

这样它就可以正常工作,我正在使用我应该使用INotifyPropertyChanged。我的问题是,在设置绑定之后,如果我这样做:

MyData myDataObject = new MyData(DateTime.Now);

那么绑定将不适用于我的新对象。可见值将不再更新。我想我应该以不同的动态方式添加我的绑定源。

4

2 回答 2

1

绑定不关心源,它必须(非常)稳定。您可以更改的是由 PropertyPath 和/或 Binding 构造函数参数指定的实例路径。

于 2013-11-02T13:25:42.690 回答
1

您正在重新创建数据源,因此您需要在之后直接更新绑定:

MyData myDataObject = new MyData(DateTime.Now);
myBinding.Source = myDataObject;

您可能还需要SetBinding再次致电。

于 2013-11-02T13:30:13.773 回答