public override void Reload() { if (!refreshed) { Refresh(); } else { // Don't set this on the first refresh Properties.Set <bool> ("NotifyWhenAdded", IsHiddenWhenEmpty); } base.Reload(); if (IsHiddenWhenEmpty && Parent != null) { bool contains_me = Parent.ContainsChildSource(this); int count = Count; if (count == 0 && contains_me) { Parent.RemoveChildSource(this); } else if (count > 0 && !contains_me) { Parent.AddChildSource(this); } } }