void UnsubscribeChanged(object obj) { ChangeDependencyObject c = obj as ChangeDependencyObject; if (c != null) { c.ObjectChanged -= new EventHandler(obj_ObjectChanged); } }
private void DoUpdate() { ValidationCollection.Clear(); ProcessValidation(); ValidationObject v = ChangeDependencyObject.GetOverallValidation(this); this.ValidationCollection.AddValidation(null, v.Code, v.Message); Changed = true; }
public override void AcceptChanges() { base.AcceptChanges(); foreach (T item in this) { ChangeDependencyObject cdo = item as ChangeDependencyObject; if (cdo != null) { cdo.AcceptChanges(); } } }
public override void RejectChanges() { base.RejectChanges(); if (typeof(T) == typeof(ChangeDependencyObject)) { foreach (T item in this) { ChangeDependencyObject cdo = item as ChangeDependencyObject; if (cdo != null) { cdo.RejectChanges(); } } } }
public override void BeginInitialization() { base.BeginInitialization(); if (typeof(T) == typeof(ChangeDependencyObject)) { foreach (T item in this) { ChangeDependencyObject cdo = item as ChangeDependencyObject; if (cdo != null) { cdo.BeginInitialization(); } } } }
static void OnChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) { ChangeDependencyObject me = sender as ChangeDependencyObject; if (me != null) { if (me.Changed) { if ((bool)e.OldValue != (bool)e.NewValue) { if (me.ObjectChanged != null) { me.ObjectChanged(me, EventArgs.Empty); } } } } }
public virtual void AcceptChanges() { if (_log.IsDebugEnabled) { _log.DebugFormat("Starting {0}", MethodBase.GetCurrentMethod().ToString()); } try { Type[] t = new Type[0]; if (this.GetType().GetConstructor(t) != null) { Original = this.GetType().GetInstance() as ChangeDependencyObject; } } catch (System.ArgumentException ex) { if (_log.IsWarnEnabled) { _log.Warn("Error initializing \"Original\"", ex); } } if (Original != null) { Original.BeginInitialization(); Original.CopyProperties(this); Original.EndInitialization(); } DoProcessValidation(); Changed = false; if (_log.IsDebugEnabled) { _log.DebugFormat("Ending {0}", MethodBase.GetCurrentMethod().ToString()); } }
protected static void OnItemChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) { if (_log.IsDebugEnabled) { _log.DebugFormat("Starting {0}", MethodBase.GetCurrentMethod().ToString()); } ChangeDependencyObject me = sender as ChangeDependencyObject; if (me != null && !me.IsInitializing) { if (e.NewValue != e.OldValue) { me.Changed = true; me.DoProcessValidation(); } } if (_log.IsDebugEnabled) { _log.DebugFormat("Ending {0}", MethodBase.GetCurrentMethod().ToString()); } }