【问题标题】:WPF: Having multiple custom control be notified when a property changeWPF:属性更改时通知多个自定义控件
【发布时间】:2010-12-27 19:12:30
【问题描述】:

我们有一个特定的案例,即拥有各种类型的自定义控件,当属性更改时它们必须做出不同的反应。

在 WPF 中处理此问题的最佳方法是什么,如果您有快速教程,将不胜感激。

谢谢

【问题讨论】:

  • 有关问题集的更多细节可能会有所帮助;因为如果您已经定义了不同类型的自定义控件,您希望对给定属性做出不同的反应,那么您应该设置...不确定我是否看到问题...
  • 您的情况是,您有一个公开属性的视图模型,并且当该属性更改时,视图中的自定义控件需要响应/更新其各个视图?

标签: wpf properties notifications


【解决方案1】:

INotifyPropertyChanged 有什么问题?每个控件都可以订阅PropertyChanged 事件并以自己特定的方式对其作出反应

【讨论】:

  • 我同意,在你的类中使用 INotifyPropertyChanged 以及将被绑定的相应属性。
  • 感谢您的回答。我创建了继承自 INotifyPropertyChanged 的​​数据对象(基于我在网上看到的许多示例。但此时,我仍然对如何在自定义控件对象中注册到数据对象以在属性更改时收到通知感到困惑和我的自定义代码正在执行。任何帮助将不胜感激。
  • 订阅活动即可:yourObject.PropertyChanged += YourEventHandler
  • 非常感谢您的解释,我现在可以运行了。
【解决方案2】:

是的,在将所有不同 UI 组件绑定到的对象上使用 INotifiyPropertyChanged 接口。这是msdn的例子:

http://msdn.microsoft.com/en-us/library/ms743695.aspx

享受吧!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-20
    • 1970-01-01
    • 1970-01-01
    • 2013-08-16
    • 2011-06-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多