首页 > 解决方案 > 捕获单击 Listview,以查看单击了哪些项目,而无需更改选择

问题描述

我目前在项目控件中实现了列表视图。左键单击 itemsource 中集合的属性被设置。如这里的答案所述: ListViews 的 ItemsControl,从每个 ListView 绑定 SelectedItem,其中 ListViews 的数量是动态的,MVVM

我想在未选择、已选择或已禁用的项目上使用右键单击之类的东西,以便在后面的代码中从中提取值,而不更改当前选择。

有任何想法吗?

标签: c#wpfxaml

解决方案


感谢@Miamy 和一些扩展搜索,我设法完成了我一直在寻找的东西。

private void ListView_PreviewMouseRightButtonDown(object sender, MouseButtonEventArgs e)
{
   e.Handled = true;
   DependencyObject originalSource = (DependencyObject)e.OriginalSource;
   while ((originalSource != null && !(originalSource is ListViewItem)))
   {
      originalSource = VisualTreeHelper.GetParent(originalSource);
   }
   if (originalSource != null)
   {

   }
} 

推荐阅读