C#,引入DragOver延迟
在我的应用程序中,我捕获一个DragOver事件,然后执行一个操作。我想在执行操作之前等待半秒钟,如果拖动操作已结束,则在该延迟之后不应执行该操作 我能想到的实现此功能的唯一方法如下:C#,引入DragOver延迟,c#,drag-and-drop,pseudocode,C#,Drag And Drop,Pseudocode,在我的应用程序中,我捕获一个DragOver事件,然后执行一个操作。我想在执行操作之前等待半秒钟,如果拖动操作已结束,则在该延迟之后不应执行该操作 我能想到的实现此功能的唯一方法如下: Function DragOver Event If TimerTimeReached Then PerformDragAction Else If Not TimerStarted StartTimer End End Function Function Drag
Function DragOver Event
If TimerTimeReached Then
PerformDragAction
Else If Not TimerStarted
StartTimer
End
End Function
Function DragLeave Event
If TimerStarted
StopTimer
End
End Function
是否有更好的方法执行此操作?看起来还可以,但DragOver事件是否发生多次
我认为PerformDragAction应该转移到计时器事件处理程序。看起来还可以,但是DragOver事件是否会发生多次
我认为PerformDragAction应该转移到计时器事件处理程序。到达计时器后DragOver不发生不是什么大问题。用户很可能会移动鼠标,而不是保持静止,但即使没有重复触发事件,也可以使其正常工作。当达到延迟时,我可能会自动触发带有计时器回调的事件,如果用户仍在拖动,它还需要继续执行拖动操作。到达计时器后没有发生拖动操作不是一个大问题。用户很可能会移动鼠标,而不是保持静止,但即使没有重复触发事件,也可以使其正常工作。当达到延迟时,我可能会使用计时器回调自动触发事件,如果用户仍在拖动,它还需要继续执行拖动操作。