Beispiel #1
0
        public string ExtractFormattedValue(DataObjectViewModel obj)
        {
            if (obj == null)
            {
                return(string.Empty);
            }

            string val = null;

            switch (this.Type)
            {
            case ColumnDisplayModel.ColumnType.Property:
                var propVal = obj.GetPropertyValue <object>(this.Name);
                val = propVal != null?propVal.ToString() : string.Empty;

                break;

            case ColumnDisplayModel.ColumnType.PropertyModel:
                DataObjectViewModel      objVmdl    = obj;
                IFormattedValueViewModel resultVMdl = null;
                foreach (var current in this.Name.Split('.'))
                {
                    if (objVmdl == null)
                    {
                        break;
                    }

                    resultVMdl = objVmdl.PropertyModelsByName[current];
                    if (resultVMdl is ObjectReferenceViewModel)
                    {
                        objVmdl = ((ObjectReferenceViewModel)resultVMdl).Value;
                    }
                }
                val = resultVMdl != null ? resultVMdl.FormattedValue : string.Empty;
                break;
            }
            return(val);
        }
 public EditableValueIsChangedVisitor(IFormattedValueViewModel baseFormattedValueViewModel)
 {
     _baseFormattedValueViewModel = baseFormattedValueViewModel;
 }