コード例 #1
0
        /// <summary> Raises the <see cref="TreeChanged"/> event in this and all overlying instances.
        /// </summary>
        protected void OnTreeChanged()
        {
            var eventArgs = new TreeChangedEventArgs(this);

            OnTreeChanged(eventArgs);
            BusinessObjectTreeHelper.OnTreeChanged(this, eventArgs);
        }
コード例 #2
0
ファイル: Category.cs プロジェクト: sulerzh/chart
 protected virtual void OnTreeChanged(TreeChangedEventArgs e)
 {
     if (this.TreeChanged == null)
     {
         return;
     }
     this.TreeChanged((object)this, e);
 }
コード例 #3
0
 public static IObjectBM GetBusinessObject(this TreeChangedEventArgs args)
 {
     if (args.OriginalSource == null)
     {
         return(null);
     }
     //TODO: return null or throw exception if original source is no IObjectBM
     return((IObjectBM)args.OriginalSource);
 }
コード例 #4
0
 private void _root_TreeChanged(object sender, TreeChangedEventArgs e)
 {
     this._leafs = (List <Category>)null;
     if (this.TreeChanged == null)
     {
         return;
     }
     this.TreeChanged(sender, e);
 }
コード例 #5
0
 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();
             }
         }
     }
 }
コード例 #6
0
        /// <summary> Raises the <see cref="TreeChanged"/> event in this and all overlying instances.
        /// </summary>
        /// <param name="e">The <see cref="TreeChangedEventArgs"/> instance containing the event data.</param>
        /// <seealso cref="docːObjectBM.TreeChangedˑexample1"/>
        protected virtual void OnTreeChanged(TreeChangedEventArgs e)
        {
            if (TreeChanged != null)
            {
                BusinessObjectTreeHelper.OnTreeChanged(TreeChanged, this, e);
            }

            var p = this.Parent;

            while (p != null)
            {
                if (p is ObjectBM)
                {
                    ((ObjectBM)Parent).OnTreeChanged(e);
                    break;
                }
                else
                {
                    //EventUtil.Raise(p.TreeChanged,..);
                    throw new NotImplementedException("{D070E402-AD00-4653-8B60-350EC9E2FAF4}");
                }
                //p = (IObjectBM) p.Parent;
            }
        }
コード例 #7
0
ファイル: Category.cs プロジェクト: sulerzh/chart
 private void Child_TreeChanged(object sender, TreeChangedEventArgs e)
 {
     this.OnTreeChanged(e);
 }
コード例 #8
0
 /// <summary> Called by <see cref="IObjectBM"/>.OnTreeChanged() when tree changed.
 /// </summary>
 /// <param name="businessObject">The business object.</param>
 /// <param name="eventArgs">The <see cref="TreeChangedEventArgs"/> instance containing the event data.</param>
 internal static void OnTreeChanged(ObjectBM businessObject, TreeChangedEventArgs eventArgs)
 {
     OnTreeChanged(TreeChanged, businessObject, eventArgs);
 }
コード例 #9
0
 /// <summary> Called by <see cref="IObjectBM"/>.OnTreeChanged(TreeChangedEventArgs) when tree changed.
 /// </summary>
 /// <param name="eventDelegate">The event delegate.</param>
 /// <param name="businessObject">The business object.</param>
 /// <param name="eventArgs">The <see cref="TreeChangedEventArgs"/> instance containing the event data.</param>
 internal static void OnTreeChanged(EventHandler <TreeChangedEventArgs> eventDelegate, ObjectBM businessObject, TreeChangedEventArgs eventArgs)
 {
     if (eventDelegate == null)
     {
         return;
     }
     if (!IsTreeChangedEventDelayed && !IsTreeChangedEventSkipped && s_DelayedTreeChangedEvents.Count == 0)
     {
         EventUtil.Raise(eventDelegate, businessObject, eventArgs, "{3B5112B8-C8D9-4E00-AC37-AE191EA26E79}");
     }
     else if (!IsTreeChangedEventSkipped)
     {
         s_DelayedTreeChangedEvents.Add(new Tuple <EventHandler <TreeChangedEventArgs>, ObjectBM, TreeChangedEventArgs>(eventDelegate, businessObject, eventArgs));
     }
 }
コード例 #10
0
 private void TreeChanged(object sender, TreeChangedEventArgs e)
 {
     this.InvalidateTree();
 }