title: NotifyPropertyChanged event where event args contain the old value
body: <p>Is there an INotifyPropertyChanged-like interface where the event args contains the old value of the property being changed, or do I have to extend that interface to create one?</p>
  
  <p>For example:</p>
  
  <pre><code>    public String ProcessDescription
      {
          get { return _ProcessDescription; }
          set
          {
              if( value != ProcessDescription )
              {
                  String oldValue = _ProcessDescription;
                  _ProcessDescription = value;
                  InvokePropertyChanged("ProcessDescription", oldvalue);
              }
          }
      }
  
      InvokePropertyChanged(String PropertyName, OldValue)
      {
           this.PropertyChanged( new ExtendedPropertyChangedEventArgs(PropertyName, OldValue) );
      }
  </code></pre>
  
  <p>I would also settle for a PropertyChanging-like event which provides this information, whether or not it supports e.Cancel.</p>