public ModelViewItem this[int classObjectIndex, string caption] { get { ModelViewObject child = (ModelViewObject)this.Children[classObjectIndex]; if (child == null) { return(null); } ModelViewItem result = child[caption]; if (result != null) { return(result); } return(null); } }
private void Items_Changed(object sender, NotifyCollectionChangedEventArgs e) { switch (e.Action) { case NotifyCollectionChangedAction.Add: foreach (object item in e.NewItems) { ModelViewObject viewObject = new ModelViewObject(item, this.LoadOnlyAttributedFields); viewObject.ModelViewItemBrowse += this.ModelViewItem_Browse; viewObject.ModelViewItemGotFocus += this.ModelItem_Focus; this.Children.Add(viewObject); } break; case NotifyCollectionChangedAction.Reset: this.Children.Clear(); break; case NotifyCollectionChangedAction.Remove: foreach (ModelViewObject oldItem in e.OldItems) { this.Children.Remove(oldItem); } break; case NotifyCollectionChangedAction.Move: case NotifyCollectionChangedAction.Replace: throw new NotImplementedException($"{e.Action} not Implemented"); } }