如何计算WPF绑定中的值

我有一个应用程序,它使用两个滑块生成代码中其他地方使用的产品。 我想要的是将产品值绑定到文本块或工具提示,例如,看起来像“10 x 15 = 150”。

第一部分很简单,看起来像这样:

      

但是,将产品放在那里的简单方法是什么?

使用Pavlo Glazkov的解决方案,我将其修改为如下所示:

 public class MultiplyFormulaStringConverter : IMultiValueConverter { public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture) { var doubleValues = values.Cast().ToArray(); double x = doubleValues[0]; double y = doubleValues[1]; var leftPart = x.ToString() + " x " + y.ToString(); var rightPart = (x * y).ToString(); var result = string.Format("{0} = {1}", leftPart, rightPart); return result; } public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture) { throw new NotImplementedException(); } } 

而且非常重要

    

谢谢!

而不是使用StringFormat创建转换器。 像这样的东西:

 public class MultiplyFormulaStringConverter : IMultiValueConverter { public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture) { var doubleValues = values.Cast().ToArray(); var leftPart = string.Join(" x ", doubleValues); var rightPart = doubleValues.Sum().ToString(); var result = string.Format("{0} = {1}", leftPart, rightPart); return result; } public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture) { throw new NotImplementedException(); } } 

       

您可以使用转换器并将要计算的两个值作为参数传递。 转换器将进行计算,然后返回字符串结果。

(转换器示例在这里 )