我知道已经有很多做类似事情的例子,我已经阅读了这些,但无法弄清楚为什么我的实现不起作用。
当 ComboBoxA 设置为值 X 时,我试图禁用 ComboBoxB。通过此实现,无论在 ComboBoxA 中选择的值如何,ComboBoxB 始终处于启用状态。
组合框A:
<ComboBox Name="ComboBoxA">
<ComboBoxItem Name="X">X</ComboBoxItem>
<ComboBoxItem Name="Y">Y</ComboBoxItem>
</ComboBox>
组合框B:
<ComboBox Name="ComboBoxB">
<ComboBoxItem Name="Something">Something</ComboBoxItem>
<ComboBox.Style>
<Style TargetType="{x:Type ComboBox}">
<Setter Property="IsEnabled" Value="True" />
<Style.Triggers>
<DataTrigger Binding="{Binding Path=SelectedItem,ElementName=ComboBoxA}" Value="X">
<Setter Property="IsEnabled" Value="False" />
</DataTrigger>
</Style.Triggers>
</Style>
</ComboBox.Style>
</ComboBox>