protected override object Convert(object[] values, Type targetType) { if (backConversionType == null) { backConversionType = targetType; } errorHandler.ClearError(); return(ObjectToObjectConverter.Coerce(calculator.Resolve(values), targetType, true)); }
protected override object CoerceAfterConvert(object value, Type targetType, object parameter, CultureInfo culture) { if (externalConverter != null) { return(externalConverter.Convert(value, targetType, parameter, culture)); } if (value == DependencyProperty.UnsetValue && targetType == typeof(string)) { value = null; } else { value = ObjectToObjectConverter.Coerce(value, targetType, true); } return(base.CoerceAfterConvert(value, targetType, parameter, culture)); }