public virtual void Remove(Component component)
 {
     _children.Remove(component);
 }
 public override void Remove(Component component)
 {
     throw new InvalidOperationException();
 }
 public virtual void Add(Component component)
 {
     _children.Add(component);
 }