public WritableParameterDTO(IParameter parameter) : base(parameter) { //base rules are not added for editeable parameter. We need them in that case however if (!parameter.Editable) { Rules.Add(ParameterDTORules.ParameterIsValid()); } }
public ParameterDTO MapFrom <TPropertyType, TParameterContainerDTO>(IParameter parameter, TParameterContainerDTO parameterContainerDTO, Expression <Func <TParameterContainerDTO, TPropertyType> > parameterValue, Func <TParameterContainerDTO, IParameterDTO> parameterDelegate) where TParameterContainerDTO : IValidatableDTO { var parameterDTO = _parameterMapper.MapFrom(parameter).DowncastTo <ParameterDTO>(); parameterDTO.ValueChanged += (o, e) => parameterContainerDTO.AddNotifiableFor(parameterValue); parameterContainerDTO.Rules.Add(ParameterDTORules.ParameterIsValid(parameterValue, parameterDelegate)); return(parameterDTO); }
private void bindToParameter() { if (Parameter == null) { return; } Parameter.PropertyChanged += handlePropertyChanged; if (Parameter.Editable) { Rules.Add(ParameterDTORules.ParameterIsValid()); } }