在两个/更多WPF列表框之间拖放

时间:2018-02-19 15:29:43

标签: c# .net wpf drag-and-drop listboxitems

我正在尝试执行以下操作: 我有两个列表框,我希望能够从第一个项目拖动项目并将其放入第二个项目。

这样可行,但是当我想从第二个项目拖动项目并将其放在第一个项目中时,我遇到了问题。

如果我为第一个设置“AllowDrop = true”并在PreviewMouseButtonDown中使用相同的代码并删除,那么我可以将项目放入自身。

当我点击一个项目时,调用DoDragDrop然后删除。我试图通过检查拖动源和目标是否相同来避免这种情况,但在我完成此操作之后,我已经看到如果我想选择一个项目,我需要双击列表框中的项目。这很烦人且不受欢迎,因为有时我不想将项目移动到另一个列表框。

我希望我可以通过单击选择一个项目(突出显示),如果我按住我的左键并移动鼠标,则可以将其放入第二个列表框。基本上,我的小应用程序中的任何列表框都应该允许删除,也应该是拖动源。

列表框是否可能同时成为拖动源和放置目标,并避免将其项目放入自身,这时用户仍然可以通过单击单击其他操作来选择项目?

我的来源是this project,但我在我的第一个列表框中添加了一些自定义字符串,而不是所有时区。

0 个答案:

没有答案