[英]WPF Drag and Drop DragDropEffects changing when moving off of WPF Window
我有一个WPF应用程序,在其中拖动文件对象。 可以将其放置在应用程序内部的多个窗口中,也可以将其放置在资源管理器中的外部窗口中,也可以放置在桌面和其他一些位置。
拖放操作可以正常工作,但是DragDropEffect仅在应用程序窗口内部正确显示。 当光标移到“应用程序”窗口之外时,大多数时候会显示“ verboten”图标。 根据大多数情况下光标离开应用程序的方式,我会得到一个明显的圆圈。 但是有时它会正确继续拖动并带有复制图标。
var files = new[] {editor.MarkdownDocument.Filename} ;
var dragData = new DataObject(DataFormats.FileDrop,files);
DragDrop.DoDragDrop(tab, dragData, DragDropEffects.Copy);
如前所述,shell的代码和处理方式正常工作-文件被复制,仅是拖动图标才是问题。
我可以控制应用程序内部的拖动图标,在窗口上没有问题,但是我无法控制其外部发生的事情。
那么如何在WPF外部可靠地控制拖动图标?
https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.dragdrop.givefeedback
DragDrop.GiveFeedback += SetTheCursorHere;
您应该(根据Microsoft的文档)缓存游标等,因为在拖动时会一遍又一遍地调用它,并且您不希望在发生拖动时加载LoadResource。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.