我有一个名为 MyControl 的控件,其中包含一个集合< MyClass >命名为 MyClasses
<MyControl>
<MyClasses>
<MyClasss Value={Binding} />
</MyClasses>
</MyControl>
来自MyClass
的 DependencyObject
Public Class MyClass : DependencyObject,INotifyPropertyChanged
{
Value //propdp (DependencyProperty)
}
我有DataTable
。我需要将表[0] [0]中的数据与 MyClass 的值属性绑定
Binding valuebinding = new Binding();
valuebinding.Path = new PropertyPath("ItemArray[0]");
valuebinding.Source = Table.Rows[0];
valuebinding.Mode = BindingMode.TwoWay;
BindingOperations.SetBinding(myValue, MyClass.ValueProperty, valuebinding);
BindingOperations.SetBinding(textBlock, TextBlock.TextProperty, valuebinding);
现在我需要动态更改数据表中存在的数据的值吗? 它有问题吗?该解决方案是否与以下原因有关?
注意:它在Silverlight中运行良好
答案 0 :(得分:0)
你最好能做一件事。使用您将从dataTable对象设置的属性创建一个类,从INotifyPropertyChanged派生该类,并从控件绑定此类的属性。一个小代码片段如下所示
class MyCodeSnippet:INOtifyPropertyChanged
{
public object MyProperty {
get;
set
{
//Register for Notification
}
}
//Implement all the INotifyPropertyChanged function
}
valuebinding.Path = new PropertyPath("MYProperty");
valuebinding.Source = MyClass;