2011-04-01 114 views
8

是否可以在多重绑定中添加绑定到ConverterParameter? 事情是这样的:ConverterParameter绑定多重绑定

<HierarchicalDataTemplate DataType="{x:Type Elements:RootElement}"> 
     <HierarchicalDataTemplate.ItemsSource> 
      <MultiBinding Converter="{StaticResource filterConverter}" ConverterParameter="{Binding IsFilterd}"> 
       <Binding Path="Children"/> 
       <Binding Path="FilterChildren"/> 
      </MultiBinding> 
     </HierarchicalDataTemplate.ItemsSource> 
     <TextBlock Text="{Binding Name}" FontWeight="Normal"/> 
    </HierarchicalDataTemplate> 

凡IsFiltered是该模板应用于对象的一个​​属性。 我总是得到一个XAML分析器错误,绑定是不正确的/允许在ConverterParameter ... 还是有一些其他方式来做到这一点?

映入眼帘,

于尔根

回答

10

ConverterParameter不是一个DependencyProperty,因此数据绑定不能在它的工作。

为什么不添加另一个绑定到MultiBinding?发送IsFiltered作为另一个值:

 <MultiBinding Converter="{StaticResource filterConverter}" > 
      <Binding Path="Children"/> 
      <Binding Path="FilterChildren"/> 
      <Binding Path="IsFiltered" /> 
     </MultiBinding> 
+0

就是这样。 – opiswahn 2011-04-04 07:06:30

+0

@Elad Katz我实际上有一种情况,我需要绑定一个拖曳方式的属性,并在转换中有另一个角色,但我不能为其他属性绑定方式,所以我需要它作为参数。 – 2013-04-11 16:51:06

+0

虽然不适用于uwp的解决方案,upvoted。 – 2017-12-02 11:41:08