如果已选择相同的项目WPF,则取消选择ListView项目
我在WPF中有一个ListView集合 比如说苹果、香蕉、樱桃 假设用户首先选择了香蕉 如果用户再次单击香蕉,则该项目仍处于选中状态如果已选择相同的项目WPF,则取消选择ListView项目,wpf,Wpf,我在WPF中有一个ListView集合 比如说苹果、香蕉、樱桃 假设用户首先选择了香蕉 如果用户再次单击香蕉,则该项目仍处于选中状态 如果已经选择了相同的项目,我想在用户单击时取消选择该项目。将SelectionMode设置为Multiple,或者根据您是否希望选择多个项目来处理ListViewItem容器的PreviewMouseLeftButtonDown事件: private void ListViewItem_PreviewMouseLeftButtonDown(object sende
如果已经选择了相同的项目,我想在用户单击时取消选择该项目。将
SelectionMode
设置为Multiple
,或者根据您是否希望选择多个项目来处理ListViewItem
容器的PreviewMouseLeftButtonDown
事件:
private void ListViewItem_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
ListViewItem lvi = (ListViewItem)sender;
if (lvi.IsSelected)
{
e.Handled = true;
lvi.IsSelected = false;
}
}
XAML:
<ListView xmlns:s="clr-namespace:System;assembly=System.Runtime">
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<EventSetter Event="PreviewMouseLeftButtonDown"
Handler="ListViewItem_PreviewMouseLeftButtonDown" />
</Style>
</ListView.ItemContainerStyle>
<s:String>Apple</s:String>
<s:String>Banana</s:String>
<s:String>Cherry</s:String>
</ListView>
苹果
香蕉
樱桃