boolean可见度转换器与复选框

本文关键字:复选框 转换器 可见度 boolean | 更新日期: 2023-09-27 18:15:55

我试图隐藏网格,由复选框控制。目前,当我使用这个盒子时,什么也没有发生。我不明白为什么。我在网上找到的一切都是我所拥有的。

<Window.Resources>
    <BooleanToVisibilityConverter x:Key="BoolToVis"/>
</Window.Resources>
<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition />
    </Grid.RowDefinitions>
    <!--upper window..-->
    <CheckBox x:Name="show" Grid.Row="1" IsChecked="False">Display Preview with Sliders?</CheckBox>
    <Grid Grid.Row="1" 
          Visibility="{Binding ElementName=show, Path=isChecked, Converter={StaticResource BoolToVis}}">
        <!--what I want to hide-->
    </Grid>
</Grid>

没有任何意义

boolean可见度转换器与复选框

属性名区分大小写。将 isChecked 替换为 IsChecked

Visibility="{Binding ElementName=show, Path=IsChecked,
                     Converter={StaticResource BoolToVis}}"

Try

Path=IsChecked

即使是XAML也是区分大小写的

我建议使用DataTrigger

 <Style x:Key="CheckBoxStyle" TargetType="{x:Type CheckBoxStyle}">
    <Style.Triggers>
        <DataTrigger Binding="{Binding ElementName=show,Path=IsChecked,}" Value="False">
            <Setter Property="Visibility" Value="Collapsed"></Setter>
        </DataTrigger>
    </Style.Triggers>
</Style>