在我的银灯应用程序中,我有两个类:容器和字段。
Container包含Fields列表。现在, 只要字段(在列表中)收到 我要通知Container对象的消息 执行一些逻辑。
字段对象不应包含Container的任何引用。我需要使用INotifyPropertyChanged来实现这一点。
请使用INotifyPropertyChanged建议一个简单的解决方案。
答案 0 :(得分:2)
您的Container对象可以订阅每个子Field对象的PropertyChanged事件。
如果不是您直接感兴趣的属性更改,您可以为Field对象实现自己的自定义事件。
如果不知道你的确切情况,很难给出一个例子......但是这里有。
E.g伪代码:(在Container对象上)
public void AddField(Field field)
{
// attach to the new fields property changed event
field.PropertyChanged += OnFieldPropertyChanged;
// add the new field to this container's collection
this.Fields.Add(field);
}
private void OnFieldPropertyChanged(object sender, PropertyChangedEventArgs e)
{
// do something
}
您可能还想查看ObservableCollections。