在ListView中使用MVVM检查复选框时显示标签并取消选中复选框隐藏所选行中的标签 - wpf

时间:2015-10-22 19:45:13

标签: wpf listview checkbox mvvm show-hide

在我的wpf应用程序中,我正在使用MVVM。在选定行的ListView中,我想在选中/取消选中同一选定行中的复选框时显示/隐藏标签。

1 个答案:

答案 0 :(得分:0)

您应该使用内置的BooleanToVisibilityConverter,并将其绑定到Checkbox的IsChecked属性。请参阅下面的简单示例。

<Window x:Class="WpfApplication2.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/    presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Window.Resources>
        <BooleanToVisibilityConverter x:Key="BoolToVis"/>
    </Window.Resources>
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="*"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>
        <CheckBox x:Name="myCheckBox" Content="CheckBox"     VerticalAlignment="Center" HorizontalAlignment="Center"><    /CheckBox>
        <TextBlock Text="Label" Grid.Row="1"      VerticalAlignment="Center" HorizontalAlignment="Center"
            Visibility="{Binding IsChecked,    ElementName=myCheckBox, Converter={StaticResource     BoolToVis}}"></TextBlock>
    </Grid>
</Window>

Checkbox unchecked Checkbox checked