public static IEnumerable <string> Get_Names(IModelMergedViewValueInfo mergedViewValueInfo)
        {
            var modelViewValueInfos = (IModelViewValueInfos)mergedViewValueInfo.Parent;
            var modelValueInfos     = ModelMergedViewValueInfosNodeGenerator.GetModelValueInfos(modelViewValueInfos, info => true);

            return(modelValueInfos.Select(info => info.Name).Where(s => modelViewValueInfos[s] == null));
        }
        public static IEnumerable <ModelValueInfo> GetModelValueInfos(IModelMergedViewValueInfo mergedViewValueInfo, Func <ModelValueInfo, bool> isValid)
        {
            var modelViewValueInfos = (IModelViewValueInfos)mergedViewValueInfo.Parent;

            return(GetModelValueInfos(modelViewValueInfos, isValid));
        }
 public static bool Get_NodeEnabled(IModelMergedViewValueInfo mergedViewValueInfo)
 {
     return(((IModelNodeEnabled)mergedViewValueInfo.Parent).NodeEnabled);
 }
 public static ModelValueInfo Get_ModelValueInfo(IModelMergedViewValueInfo mergedViewValueInfo)
 {
     return(string.IsNullOrEmpty(mergedViewValueInfo.Name)? null
                : ModelMergedViewValueInfosNodeGenerator.GetModelValueInfos(mergedViewValueInfo, info => true)
            .First(info => info.Name == mergedViewValueInfo.Name));
 }