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; }