我有ComboBox并基于CheckBox启用它。如果我在后面的代码中禁用并启用复选框,则它将停止工作。但是,如果我不这样做,那么当复选框被选中时,ComboBox会启用,并且当取消选中该复选框时会被禁用。
以下代码示例:
<CheckBox x:Name="ckBox1" IsChecked="{Binding proceed, TargetNullValue=false}" Content="Proceed" FontSize="16"/>
ComboxBox:
<ComboBox x:Name="cmbOptions" SelectedValuePath="Content" SelectedValue="{Binding selOptions}" Width="89" IsEnabled="{Binding IsChecked, ElementName=ckBox1}" >
<ComboBoxItem Content="Option 1"/>
<ComboBoxItem Content="Option 2"/>
<ComboBoxItem Content="Option 3"/>
<ComboBoxItem Content="Other"/>
</ComboBox>
Diabling:
var controls = this.sourceGrid.Children.OfType<Control>();
controls.ToList().ForEach(c => c.IsEnabled = false);
启用:
controls.ToList().ForEach(c => c.IsEnabled = true);