我需要在不使用 XAML 的情况下直接在 C# 中实现 MultiBindings,我知道如何在 C# 中使用 IMultiValueConverter,但是,如何做:

<MultiBinding Converter="{StaticResource sumConverter}">
  <Binding ElementName="FirstSlider" Path="Value" />
  <Binding ElementName="SecondSlider" Path="Value" />
  <Binding ElementName="ThirdSlider" Path="Value" />
</MultiBinding>

在 C# 中?

最佳答案

为什么不使用 XAML?

以下代码应该可以工作:

MultiBinding multiBinding = new MultiBinding();

multiBinding.Converter = converter;

multiBinding.Bindings.Add(new Binding
{
    ElementName = "FirstSlider",
    Path = new PropertyPath("Value")
});
multiBinding.Bindings.Add(new Binding
{
    ElementName = "SecondSlider",
    Path = new PropertyPath("Value")
});
multiBinding.Bindings.Add(new Binding
{
    ElementName = "ThirdSlider",
    Path = new PropertyPath("Value")
});

关于c# - WPF 多重绑定(bind),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2354613/

10-17 00:16