using System; using System.Collections.Generic; using System.Text; namespace DotNet.RevitUI.MVVM { /// /// 属性通知基类. /// public class ObservableObject : System.ComponentModel.INotifyPropertyChanged { /// /// 属性改变后触发事件. /// public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; /// /// 属性改变前触发事件. /// public event System.ComponentModel.PropertyChangingEventHandler PropertyChanging; /// /// 属性改变委托处理. /// protected System.ComponentModel.PropertyChangedEventHandler PropertyChangedHandler { get { return this.PropertyChanged; } } /// /// 属性改变委托处理. /// protected System.ComponentModel.PropertyChangingEventHandler PropertyChangingHandler { get { return this.PropertyChanging; } } /// /// 属性改变之前回调. /// /// Name of the property. protected virtual void RaisePropertyChanging(string propertyName) { this.PropertyChanging?.Invoke(this, new System.ComponentModel.PropertyChangingEventArgs(propertyName)); } /// /// 属性改变之后回调. /// /// Name of the property. protected virtual void RaisePropertyChanged(string propertyName) { this.PropertyChanged?.Invoke(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); } } }