This commit is contained in:
ShrlAlgo
2025-07-11 09:20:23 +08:00
parent c7b104f44f
commit 4d35cadb56
840 changed files with 102347 additions and 11595 deletions

View File

@@ -0,0 +1,50 @@
using System;
using System.Globalization;
using System.Linq;
using System.Windows.Data;
using System.Windows.Markup;
namespace AntdWpf.Converters;
public sealed class MathMultiConverter : MarkupExtension, IMultiValueConverter
{
public MathOperation Operation { get; set; }
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
{
try
{
double value1 = System.Convert.ToDouble(values[0], CultureInfo.InvariantCulture);
double value2 = System.Convert.ToDouble(values[1], CultureInfo.InvariantCulture);
switch (Operation)
{
case MathOperation.Add:
return value1 + value2;
case MathOperation.Divide:
return value1 / value2;
case MathOperation.Multiply:
return value1 * value2;
case MathOperation.Subtract:
return value1 - value2;
case MathOperation.Pow:
return Math.Pow(value1, value2);
default:
return Binding.DoNothing;
}
}
catch (FormatException)
{
return Binding.DoNothing;
}
}
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
public override object ProvideValue(IServiceProvider serviceProvider)
{
return this;
}
}