繁体   English   中英

如何从XAML检查是否选中任何复选框C#

[英]How to check from xaml if any of the checkbox is checked c#

我想启用按钮,直到所有字段都填满,然后才这样做,但是我不知道如何使用复选框来做到这一点。 我至少需要检查其中之一,并且必须从xaml而不是后面的代码中完成。 如果有人可以帮助,我将不胜感激。

这是我的xaml代码:

<Button.Style>
            <Style TargetType="{x:Type Button}">
                <Style.Triggers>
                    <DataTrigger Binding="{Binding Text.Length, ElementName=firstname, UpdateSourceTrigger=PropertyChanged}" Value="0">
                        <Setter Property="IsEnabled" Value="False"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding Text.Length, ElementName=lastname, UpdateSourceTrigger=PropertyChanged}" Value="0">
                        <Setter Property="IsEnabled" Value="False"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding Text.Length, ElementName=username, UpdateSourceTrigger=PropertyChanged}" Value="0">
                        <Setter Property="IsEnabled" Value="False"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding Text.Length, ElementName=password, UpdateSourceTrigger=PropertyChanged}" Value="0">
                        <Setter Property="IsEnabled" Value="False"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding IsChecked, ElementName=scientist}" Value="false">
                        <Setter Property="IsEnabled" Value="False"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding IsChecked, ElementName=writer}" Value="false">
                        <Setter Property="IsEnabled" Value="False"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding IsChecked, ElementName=programmer}" Value="false">
                        <Setter Property="IsEnabled" Value="False"/>
                    </DataTrigger>
                </Style.Triggers>
            </Style>
        </Button.Style> 

编辑:仅当所有复选框都选中时,这将启用按钮,但是当至少选中其中一个复选框时,我需要将其启用。

您需要一个MultiDataTrigger ...

            <MultiDataTrigger>
                <MultiDataTrigger.Conditions>
                    <Condition Binding="{Binding IsChecked, ElementName=scientist}" Value="false"/>
                    <Condition Binding="{Binding IsChecked, ElementName=writer}" Value="false"/>
                    <Condition Binding="{Binding IsChecked, ElementName=programmer}" Value="false"/>
                </MultiDataTrigger.Conditions>
                <Setter Property="IsEnabled" Value="False"/>
            </MultiDataTrigger>

暂无
暂无

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

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