internal void RemoveFromSelection(IModelSelectable item)
        {
            if (item is IModelGroupable)
            {
                List <IModelGroupable> groupItems = GetGroupMembers(item as IModelGroupable);

                foreach (IModelSelectable groupItem in groupItems)
                {
                    groupItem.IsSelected = false;
                    CurrentSelection.Remove(groupItem);
                }
            }
            else
            {
                item.IsSelected = false;
                CurrentSelection.Remove(item);
            }
        }
        internal void AddToSelection(IModelSelectable item)
        {
            if (item is IModelGroupable)
            {
                List <IModelGroupable> groupItems = GetGroupMembers(item as IModelGroupable);

                foreach (IModelSelectable groupItem in groupItems)
                {
                    groupItem.IsSelected = true;
                    CurrentSelection.Add(groupItem);
                    MainWindow m = new MainWindow();
                    m.propertyGrid.SelectedObject     = null;
                    m.propertyGrid.SelectedObjectName = "";
                }
            }
            else
            {
                item.IsSelected = true;
                CurrentSelection.Add(item);
            }
        }
 internal void SelectItem(IModelSelectable item)
 {
     this.ClearSelection();
     this.AddToSelection(item);
 }