DependencyProperty和DataBinding?

时间:2008-10-01 18:40:42

标签: wpf data-binding

在WPF中:

有人可以解释DependencyProperty和数据绑定之间的关系吗?

我的代码后面有一个属性我希望成为我的数据绑定源。 如果我想将此对象绑定到XAML上的文本框,DependencyProperty(或它)是什么时候发挥作用。

2 个答案:

答案 0 :(得分:13)

绑定中的目标必须始终为DependencyProperty,但任何属性(甚至是普通属性)都可以作为源。

普通属性的问题是绑定只会获取一次值,之后不会更改,因为普通源属性中缺少更改通知。

要提供更改通知而不将其设为DependencyProperty,可以:

  1. 在定义属性的类上实现INotifyPropertyChanged

  2. 创建 PropertyName Changed事件。 (向后兼容性。)

  3. WPF将在首选时更好地工作。

答案 1 :(得分:0)

什么是 DependencyProperty?

DependencyProperty 类是隐藏在 .Net Framework WPF 深处的最重要的设计基础之一。

此类受 .NET Framework 中的 sealed 保护。 该属性与一维通用属性的不同之处在于它不仅存储字段值,而且还利用了类中提供的各种功能。 最重要的是,数据绑定有一个完整的基础。您还可以在绑定某些内容时发送通知。

DependencyProperty
Wpf Xaml Binding

答案已经很晚了,但我会介绍我的研究结果。