我所有我見過的在C#中的事件的樣本是觸發該事件被寫成注意到:觸發事件
PropertyChangedEventHandler handler = PropertyChanged;
if(handler != null)
handler(this, new PropertyChangedEventArgs(propertyName));
那是什麼,只是寫之間的不同:
if(PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
原因是作爲問題的一部分陳述在這裏:http://stackoverflow.com/questions/786383/c-sharp-events-and-thread-safety還有一個鏈接到Eric Lippert的博客文章解釋它:http://blogs.msdn.com/b/ericlippert/archive/2009/04/29/events-and-races.aspx – Dirk
@JenishRabadiya:它可以爲null。這是一個事件。 –
@PatrickHofman是的你是對的。它來自'INotifyPropertyChanged'接口。 –