public PartialViewResult Meta(EditWorksheetOwner model)
        {
            if (model.EditWorksheet != null)
            {
                model.EditWorksheet.WorksheetMeta();
                assignOptImgs(model);
            }

            return WorksheetRowsPartial(model);
        }
        public PartialViewResult AddComp(EditWorksheetOwner model)
        {
            if (model.EditWorksheet != null)
            {
                assignOptImgs(model);

                WorksheetEditOpt opt = model.EditWorksheet.AddComp();
                AssgnOptImgs(opt);
            }

            return WorksheetRowsPartial(model);
        }
        public PartialViewResult WorksheetPartial(EditWorksheetOwner model)
        {
            string wsKey = model.FullPropertyName(m => m.EditWorksheet);
            foreach (var delPair in ModelState.Where(p => (p.Key.Contains(wsKey))).ToList())
            {
                ModelState.Remove(delPair.Key);
            }

            assignOptImgs(model);

            return PartialView("Worksheet", model);
        }
 protected void assignOptImgs(EditWorksheetOwner model)
 {
     if (model.NotNullAny(m => m.IfNotNull(e => e.EditWorksheet).IfNotNull(w => w.WorksheetOpts)))
     {
         foreach (var opt in model.EditWorksheet.WorksheetOpts.Where(o => (o.Type == OptionType.Component) && (o.ImgCount > 0)))
         {
             AssgnOptImgs(opt);
         }
     }
 }