private void If_ObjectC_Changed_Then_Change_ObjectB(object sender, TreeChangedEventArgs args) { //LOG: using(this.LogBlock(Flow.Enter.EventHandler.Current.Parameter("Source",args.OriginalSource.GetType().Name))) { if (args.OriginalSource == this.B.C) { using (BusinessObjectTreeHelper.PauseTreeChangedEvents()) { this.B.Change(); } } } }
public void CommonB() { //LOG: using(this.LogBlock(Flow.Enter)) { int treeChangesCount = 0; BusinessObjectTreeHelper.TreeChanged += delegate(object sender, TreeChangedEventArgs args) { treeChangesCount++; }; var a = new ObjectA(); using (BusinessObjectTreeHelper.PauseTreeChangedEvents()) { a.B.C.Change(); } Debug.WriteLine("=>TreeChangesCount: " + treeChangesCount); } }
public void CommonE() { int treeChangesCountA = 0, treeChangesCountB = 0, treeChangesCountC = 0; var a = new ObjectA(); a.TreeChanged += delegate(object sender, TreeChangedEventArgs args) { treeChangesCountA++; }; a.B.TreeChanged += delegate(object sender, TreeChangedEventArgs args) { treeChangesCountB++; }; a.B.C.TreeChanged += delegate(object sender, TreeChangedEventArgs args) { treeChangesCountC++; }; using (BusinessObjectTreeHelper.PauseTreeChangedEvents()) { a.B.C.Change(); } Debug.WriteLine("=>TreeChangesCountA: " + treeChangesCountA); Debug.WriteLine("=>TreeChangesCountB: " + treeChangesCountB); Debug.WriteLine("=>TreeChangesCountC: " + treeChangesCountC); }
public void RaiseTreeChangedEventWithHelper() { BusinessObjectTreeHelper.TreeChanged += delegate(object sender, TreeChangedEventArgs args) { Debug.WriteLine("=>" + new StackTrace()); }; BusinessObjectTreeHelper.RaiseTreeChangedEventWithHelper(); }