111,089
社区成员




IsChecked="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListViewItem}}, Path=IsSelected}"
为什么要绑定 它的IsSelected属性?你如果选择其它地方,IsSelected为false,当然不能选中了。
你应该 在IsChecked中 绑定一个bool类型的属性,在全选的事件中 去更新 bool类型属性为true或者false
<ListView BorderThickness="0" Name="lv" ItemsSource="{Binding Obser}" Margin="0,5" >
<!--<i:Interaction.Triggers>
<i:EventTrigger EventName="SelectionChanged">
<i:InvokeCommandAction Command="{Binding SelectedItemCmd}" CommandParameter="{Binding ElementName=lv}" />
</i:EventTrigger>
</i:Interaction.Triggers>-->
<ListView.View>
<GridView AllowsColumnReorder="False" >
<GridViewColumn Width="100">
<GridViewColumn.Header>
<CheckBox HorizontalAlignment="Center" VerticalAlignment="Center" x:Name="selectAll" Command="{Binding
SelectAllChanged}" CommandParameter="{Binding ElementName=TestListViewCheckBoxXaml}" IsChecked="{Binding IsChecked,Mode=TwoWay}">
<TextBlock FontSize="15" Foreground="White" HorizontalAlignment="Center" VerticalAlignment="Center">全选</TextBlock>
</CheckBox>
</GridViewColumn.Header>
<GridViewColumn.CellTemplate>
<DataTemplate>
<CheckBox x:Name="lookAfficheChkHeader" DockPanel.Dock="Left" Command="{Binding SelectAllChanged}" IsChecked="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListViewItem}}, Path=IsSelected}" HorizontalContentAlignment="Center" VerticalAlignment="Center"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="公告标题" Width="400">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding name}" HorizontalAlignment="Center" VerticalAlignment="Center"></TextBlock>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
前台