public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
var intValue = value as int?;
if (intValue.HasValue)
{
if (intValue.Value == 0)
{
return this.WhenZero;
}
return (intValue.Value > 0) ? this.WhenPositive : this.WhenNegative;
}
var doubleValue = value as double?;
if (doubleValue.HasValue)
{
if (doubleValue.Value == 0)
{
return this.WhenZero;
}
return (doubleValue.Value > 0) ? this.WhenPositive : this.WhenNegative;
}
var decimalValue = value as decimal?;
if (decimalValue.HasValue)
{
if (decimalValue.Value == 0)
{
return this.WhenZero;
}
return (decimalValue.Value > 0) ? this.WhenPositive : this.WhenNegative;
}
return WhenNull;
}