我正在尝试一些拖放功能,但无法辨别事件之间Give Feedback的区别。Drag Enter
在 上Drag Enter,我们检查它进入的元素是否可以接受将要被删除的对象并向用户显示某种预览。
同样,Give Feedback如果拖动的元素将被放置,也会向用户显示放置目标的预览。
这两者有什么区别?
Drag Over和 和有什么不一样Drag Enter?
我正在尝试一些拖放功能,但无法辨别事件之间Give Feedback的区别。Drag Enter
在 上Drag Enter,我们检查它进入的元素是否可以接受将要被删除的对象并向用户显示某种预览。
同样,Give Feedback如果拖动的元素将被放置,也会向用户显示放置目标的预览。
这两者有什么区别?
Drag Over和 和有什么不一样Drag Enter?
正如文档DragEnter所说,
DragEnter当用户在拖放操作期间第一次将鼠标光标拖到控件上时,将引发该事件。DoDragDrop方法确定当前光标位置下的控件。然后它检查控件是否是有效的放置目标。
如果控件是有效的放置目标,
GiveFeedback则引发事件并指定拖放效果。
因此,不同之处在于DragEnter针对每个控件引发,并且GiveFeedback仅针对有效的放置目标引发。
DragEnter和之间的区别在于DragOver前者仅在鼠标进入控件时才被抬起,而后者可以在鼠标移到同一控件上时多次抬起。