【问题标题】:Dependency Properties on Controls控件的依赖属性
【发布时间】:2011-05-25 04:13:05
【问题描述】:

在 WPF 中,控件的一些属性是依赖属性,有些是普通属性。

例如TextBox.SelectedText 是一个普通属性而不是依赖属性。我使用 MVVM,我经常想绑定到某个属性,但我不能,因为它是一个普通属性。

谁能给我解释一下,决定一个属性是普通属性还是依赖属性背后的逻辑是什么。

另外,我可以解决这个问题并以某种方式绑定到普通属性,就好像它们是依赖属性一样?

【问题讨论】:

    标签: wpf


    【解决方案1】:
    【解决方案2】:

    您可以绑定到普通属性,但如果您的属性发生更改,您的绑定将不会收到通知。但是,您可以在您的类中实现 INotifyPropertyChanged,并且绑定会自动更新您的控件。

    【讨论】:

    • 但为什么我会收到此错误:无法在“TextBox”类型的“CaretIndex”属性上设置“绑定”。只能在 DependencyObject 的 DependencyProperty 上设置“绑定”。
    • 这是因为只有依赖属性才能成为绑定的目标。DependencyProperty 始终是派生自 DependencyObject 类的对象的属性。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多