我想在选中2个复选框中的任何一个时启用按钮。 如果未选中任何复选框,则该按钮应处于非活动状态(IsEnabled = false)
可以像这样绑定。
IsEnabled =“{Binding ElementName = CheckBox Path = IsChecked}”
但它仅适用于单个复选框。我想将复选框IsChecked属性绑定到XAML本身的按钮的IsEnabled属性。 (我知道如何使用代码中更改的属性)
我尝试使用Multi触发器。
<Button.IsEnabled>
<MultiBinding>
<MultiBinding.Bindings> <Binding ElementName="BlankmeasurementCheckBox" Path="IsChecked"/>
<Binding ElementName="MeasurementCheckBox" Path="IsChecked"/>
</MultiBinding.Bindings>
</MultiBinding>
</Button.IsEnabled>
但它似乎没有帮助。你能帮帮我吗?提前谢谢。
答案 0 :(得分:3)
您可以在此处使用MultiDataTrigger
。
以下是示例代码:
<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
<CheckBox Name="cbSampleYes" Content="Yes" />
<CheckBox Name="cbSampleSure" Content="I'm sure" />
<Button HorizontalAlignment="Center" Margin="0,20,0,0">
<Button.Style>
<Style TargetType="Button">
<Setter Property="Content" Value="Verified" />
<Style.Triggers>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding ElementName=cbSampleYes, Path=IsChecked}" Value="False" />
<Condition Binding="{Binding ElementName=cbSampleSure, Path=IsChecked}" Value="False" />
</MultiDataTrigger.Conditions>
<Setter Property="Content" Value="Unverified" />
<Setter Property="IsEnabled" Value="False" />
</MultiDataTrigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>
</StackPanel>