WPF实现INotifyPropertyChanged

时间:2009-01-29 22:24:41

标签: wpf data-binding inotifypropertychanged

我已经设置了一个属性并实现了INotifyPropertyChanged

像这样......

public event PropertyChangedEventHandler PropertyChanged;

public FlowProcess LastSelectedFlowProcess
{
    get { return _lastSelectedFlowProcess; }
    set
    {
        _lastSelectedFlowProcess = value;
        Notify("LastSelectedFlowProcess");
        UpdateFlows();
    }
}

private void Notify(string propName)
{
    if (PropertyChanged != null)
        PropertyChanged(this, new PropertyChangedEventArgs(propName));
}

我在其他类上使用了这个确切的设置,但由于某些原因,在Notify方法中,PropertyChanged变量返回null。

在其他类中,当这个工作时,PropertyChanged事件不为null并且计算为委托?我在这里缺少什么?

我从课堂内调用公共访问器会产生什么影响?

2 个答案:

答案 0 :(得分:10)

委托是否为空取决于是否有任何订阅该事件。

答案 1 :(得分:1)

添加此代码

event PropertyChangedEventHandler INotifyPropertyChanged.PropertyChanged {
 add { this.PropertyChanged += value; }
 remove { this.PropertyChanged -= value; }
}