2024-09-22 11:05:41 +08:00
|
|
|
|
using System;
|
|
|
|
|
|
using System.Linq;
|
|
|
|
|
|
using System.Windows.Data;
|
|
|
|
|
|
|
2025-02-10 20:53:40 +08:00
|
|
|
|
namespace WPFluent.Converters;
|
|
|
|
|
|
|
2024-09-22 11:05:41 +08:00
|
|
|
|
public class DoubleToPercentageConverter : IValueConverter
|
|
|
|
|
|
{
|
|
|
|
|
|
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
|
|
|
|
|
{
|
|
|
|
|
|
var d = (double)value;
|
|
|
|
|
|
return Math.Round(d * 100, MidpointRounding.AwayFromZero);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
|
|
|
|
|
{
|
|
|
|
|
|
var str = value.ToString().TrimEnd('%');
|
2025-02-10 20:53:40 +08:00
|
|
|
|
if(double.TryParse(str, out var d))
|
2024-09-22 11:05:41 +08:00
|
|
|
|
{
|
|
|
|
|
|
return d / 100;
|
|
|
|
|
|
}
|
|
|
|
|
|
return Binding.DoNothing;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|