public Boolean RemoveChild(Node child) { if (this.Children[child.Id] == null) return false; this.Children.Remove(child.Id); this.ChildrenList.Remove(child); child.Parent = null; this.ChildRemoved.Fire(this, child); return true; }