public bool shouldExpand()
 {
     if (IsGenerator)
     {
         return(true);
     }
     else if (Parent != null)
     {
         ISOViewModelBase parentVM = _container.getViewModelForISO(Parent);
         return(parentVM.shouldExpand());
     }
     return(false);
 }
        internal ISOViewModelBase(ISerializableObject thisObj, ISOViewModelContainer container)
        {
            _obj       = thisObj;
            _container = container;
            Name       = getName();
            Icon       = getIcon();

            if (!isRoot())
            {
                var pVM = _container.getViewModelForISO(Parent);
                pVM.injectChild(this);
            }

            fillProperties();
        }