& # 39; MultiBinding& # 39;不能在SetterBaseCollection'中使用

本文关键字:不能 MultiBinding SetterBaseCollection | 更新日期: 2023-09-27 18:07:23

我刚刚开始在c#中编程,并得到以下错误信息"A 'MultiBinding'不能在'SetterBaseCollection'集合中使用。"MultiBinding"只能在DependencyObject的DependencyProperty上设置。我的想法是禁用一些依赖于给定给转换器的输入值的组合框。稍后在xaml文件中使用相同的转换器,不会出现错误。

    <DataTemplate x:Key="ComboBoxDirectionCellDataTemplate">
         <Canvas>
            <ComboBox Name="DirectionBi" ItemsSource="{Binding Source={StaticResource DirectionBiList}}" SelectedItem="{Binding Direction, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Background="#FFCDCDCD" />
            <ComboBox Name="DirectionOut" ItemsSource="{Binding Source={StaticResource DirectionOutList}}" SelectedItem="{Binding PinFunctionOptions[SelectedPinFunctionIdx].SupportedDirections, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Background="#FFCDCDCD" />
            <ComboBox Name="DirectionIn" ItemsSource="{Binding Source={StaticResource DirectionOutList}}" SelectedItem="{Binding PinFunctionOptions[SelectedPinFunctionIdx].SupportedDirections, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Background="#FFCDCDCD" />
        </Canvas>
        <DataTemplate.Triggers>
            <DataTrigger Value="In">
                <MultiBinding Converter="{StaticResource FunctionToGroupConverter}">
                    <Binding Path="PinFunctionOptions"/>
                    <Binding Path="SelectedPinFunctionIdx"/>
                </MultiBinding>
                <Setter TargetName="DirectionBi" Property="Visibility" Value="Hidden"/>

感谢帮助!!!!

& # 39; MultiBinding& # 39;不能在SetterBaseCollection'中使用

我可能是错的-我没有办法检查这个时刻…

我认为你想要的是……

<DataTrigger ...>
<DataTrigger.Binding>
    <MultiBinding Converter="{StaticResource FunctionToGroupConverter}">
        <Binding Path="PinFunctionOptions"/>
        <Binding Path="SelectedPinFunctionIdx"/>
    </MultiBinding>
</DataTrigger.Binding>
</DataTrigger>

DataTemplate.Triggers期待Setter的集合为什么你试图在那里放一个MultiBinding ?

你得到的异常是这个的结果。

我不完全确定您正在尝试使用MultiBinding,但是通过在各自的元素上单独执行绑定,您可能会更好。