我正在使用 WPF ListView,其中 SelectionMode 设置为 Extended(您只能在按住 ctrl 的情况下选择多个项目)。我需要在两个 ListView 之间实现 D&D。为了执行拖动事件,我在 WinForms 中使用了 DragItem 事件,但是 wpf 中没有提供这样的事件。我决定使用 ListViewItem PreviewMouseDownClick
private void ListViewItemMouseDownClick(object sender, MouseButtonEventArgs e)
{
if (!this.AllowDragDrop)
{
return;
}
DragDrop.DoDragDrop(
ListViewItemsCollection, this.SelectedItems, DragDropEffects.Copy | DragDropEffects.Move);
}
不幸的是,这样的解决方案有一个错误:选择单个项目(不按下 ctrl)有效。但是,我需要在按住 ctrl 的同时双击选择项目才能选择多个项目。使用 ListView 的 PreviewMouseDown 或 ListViewItem 的 PreviewMouseDown 时没有区别。有解决问题的想法吗?
最佳答案
找到解决方案,就像一个 chram: social.msdn.microsoft.com . 我用来自 moncadad 链接的代码加入了它。谢谢!
关于c# - 在 WPF ListView 中拖放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15487774/