/// <summary> /// /// </summary> /// <typeparam name="TValue"></typeparam> /// <param name="sender"></param> /// <param name="value"></param> /// <param name="container"></param> /// <param name="propertyName"></param> public static void HandleProperty <TValue>(this ObservableEntity sender, TValue value, out TValue container, [CallerMemberName] string propertyName = "") { sender.OnPropertyChanging(new PropertyChangingEventArgs(propertyName)); container = value; sender.OnPropertyChanged(new PropertyChangedEventArgs(propertyName)); sender.OnObservablePropertyValueChanged(new ObservablePropertyValueChangedEventArgs(propertyName, value)); }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> internal static void OnObservableCollectionChanged (ObservableEntity sender, ObservableCollectionChangedEventArgs e) => sender.Changes.Append(e);
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> internal static void OnObservablePropertyValueChanged (ObservableEntity sender, ObservablePropertyValueChangedEventArgs e) => sender.Changes.Append(e);