I've noticed in all the samples I've seen for events in C# that firing the event is written as:
PropertyChangedEventHandler handler = PropertyChanged;
if(handler != null)
handler(this, new PropertyChangedEventArgs(propertyName));
What is the different between that and just writing:
if(PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));