繁体   English   中英

将按钮的IsEnabled属性绑定到XAML中的2个复选框IsChecked属性

[英]Binding a button's IsEnabled property to 2 checkbox IsChecked properties in XAML

我想在选中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>

但它似乎没有帮助。 你能帮帮我吗? 提前致谢。

您可以在此处使用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>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM