如何在mvvm模式中通知容器类
在silver light应用程序中,我有两个类:容器和字段 容器包含字段列表。现在, 每当(列表中的)字段收到 我要通知容器对象的消息 执行一些逻辑 字段对象不应包含容器的任何引用。我需要使用INotifyPropertyChanged实现这一点如何在mvvm模式中通知容器类,mvvm,Mvvm,在silver light应用程序中,我有两个类:容器和字段 容器包含字段列表。现在, 每当(列表中的)字段收到 我要通知容器对象的消息 执行一些逻辑 字段对象不应包含容器的任何引用。我需要使用INotifyPropertyChanged实现这一点 请建议使用INotifyPropertyChanged的简单解决方案。您的容器对象可以订阅其每个子字段对象的PropertyChanged事件 如果它不是您感兴趣的直接属性更改,您可以为Field对象实现自己的自定义事件 如果不知道你的具体情况,很难
请建议使用INotifyPropertyChanged的简单解决方案。您的容器对象可以订阅其每个子字段对象的PropertyChanged事件 如果它不是您感兴趣的直接属性更改,您可以为Field对象实现自己的自定义事件 如果不知道你的具体情况,很难给出一个例子。。。但事情是这样的 例如伪代码:(在容器对象上)
您可能还想签出。添加了在子对象添加到容器时订阅其属性更改事件的代码示例。注意:如果您特别关注property changed事件,您应该关注observable collection和以下问题:
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
}