我正在详细阅读iNotifyPropertyChanged.
有人可以澄清为什么我们需要检查
PropertyChanged !=null?
为什么一个事件是空的?或者换句话说,为什么甚至检查它是否为空?NotifyPropertyChanged调用的唯一时间是何时PropertyChanged被引发(因此它不能为null),不是它.谁/什么可以使它为空?
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(string info)
{
if (PropertyChanged != null)
{
PropertyChanged(this,new PropertyChangedEventArgs(info));
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢.
如果没有人订阅该事件,它将为null.因此,如果不这样做,您将在运行时获得事件的NullReferenceException.
在您正在谈论的界面的情况下,它也可能在订阅者有机会订阅之前发生提升动作,尽管他们将要订阅,因为INotifyPropertyChanged界面非常繁琐.
| 归档时间: |
|
| 查看次数: |
1453 次 |
| 最近记录: |