protected override void Dispose(bool disposing)
{
if (disposing)
{
if (_children != null)
{
for (int i = _children.Count - 1; i >= 0; i--)
_children[i].Dispose();
_children.PropertyChanged -= new PropertyChangedEventHandler(OnChildrenPropertyChanged);
_children.Clear();
}
}
base.Dispose(disposing);
}