From: jpbruyere Date: Tue, 13 Dec 2016 23:59:29 +0000 (+0100) Subject: ParentChanged event in GraphicObject X-Git-Tag: v0.5.1~63^2~33 X-Git-Url: https://git.osiis.dedyn.io/?a=commitdiff_plain;h=c30725eb225c84682bc58124f7a7769db531bc69;p=jp%2Fcrow.git ParentChanged event in GraphicObject --- diff --git a/src/GraphicObjects/GraphicObject.cs b/src/GraphicObjects/GraphicObject.cs index 2cdc2aef..c7c981b1 100644 --- a/src/GraphicObjects/GraphicObject.cs +++ b/src/GraphicObjects/GraphicObject.cs @@ -124,7 +124,14 @@ namespace Crow /// [XmlIgnore]public virtual ILayoutable Parent { get { return parent; } - set { parent = value; } + set { + if (parent == value) + return; + DataSourceChangeEventArgs e = new DataSourceChangeEventArgs (parent, value); + parent = value; + + onParentChanged (this, e); + } } [XmlIgnore]public ILayoutable LogicalParent { get { return logicalParent == null ? Parent : logicalParent; } @@ -178,6 +185,7 @@ namespace Crow public event EventHandler Disabled; public event EventHandler LayoutChanged; public event EventHandler DataSourceChanged; + public event EventHandler ParentChanged; #endregion #region public properties @@ -1225,6 +1233,9 @@ namespace Crow public virtual void onDisable(object sender, EventArgs e){ Disabled.Raise (this, e); } + protected virtual void onParentChanged(object sender, DataSourceChangeEventArgs e) { + ParentChanged.Raise (sender, e); + } #region Binding // public void BindMember(string _member, string _expression){