| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- /*************************************************************************************
- Extended WPF Toolkit
- Copyright (C) 2007-2013 Xceed Software Inc.
- This program is provided to you under the terms of the Microsoft Public
- License (Ms-PL) as published at http://wpftoolkit.codeplex.com/license
- For more features, controls, and fast professional support,
- pick up the Plus Edition at http://xceed.com/wpf_toolkit
- Stay informed: follow @datagrid on Twitter or Like http://facebook.com/datagrids
- ***********************************************************************************/
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Xml.Serialization;
- namespace Xceed.Wpf.AvalonDock.Layout
- {
- [Serializable]
- public abstract class LayoutGroupBase : LayoutElement
- {
- [field: NonSerialized]
- [field: XmlIgnore]
- public event EventHandler ChildrenCollectionChanged;
- protected virtual void OnChildrenCollectionChanged()
- {
- if (ChildrenCollectionChanged != null)
- ChildrenCollectionChanged(this, EventArgs.Empty);
- }
- protected void NotifyChildrenTreeChanged(ChildrenTreeChange change)
- {
- OnChildrenTreeChanged(change);
- var parentGroup = Parent as LayoutGroupBase;
- if (parentGroup != null)
- parentGroup.NotifyChildrenTreeChanged(ChildrenTreeChange.TreeChanged);
- }
- [field: NonSerialized]
- [field: XmlIgnore]
- public event EventHandler<ChildrenTreeChangedEventArgs> ChildrenTreeChanged;
- protected virtual void OnChildrenTreeChanged(ChildrenTreeChange change)
- {
- if (ChildrenTreeChanged != null)
- ChildrenTreeChanged(this, new ChildrenTreeChangedEventArgs(change));
- }
- }
- }
|