【发布时间】:2009-06-04 14:32:48
【问题描述】:
我有 2 个控件都绑定到相同的依赖属性“天气”。 在第一个控件中放置当前天气,另一个控件显示预报。
在我的第一个控件的 XAML 中,我绑定了一个包含“湿度”的 TextBox,如下所示。
<TextBox Text="{Binding Weather.Humidity}" />
每当湿度发生变化时,我希望其他控件执行某些操作,但是仅更改湿度不会改变天气 - 所以它不会通知其他控件。改变湿度应该会改变整个预测。
(我实际上不是在写天气应用,只是用上面的例子)
我的问题:这样做的正确方法是什么?我能想到的唯一方法是在触及 Weather 属性的 TextBox 上设置 SourceUpdated 事件处理程序。有没有更优雅的方法来做到这一点?
谢谢
【问题讨论】:
-
您能否提供更多信息,说明您如何显示预报以及这与您的湿度显示有何关系?这一切都是在一个控件中完成的吗?此外,湿度与“天气”对象中的另一个属性之间是否存在内部关系?你看过 INotifyPropertyChanged 接口吗?