如何检测何时拖动表单?

时间:2009-06-17 21:31:52

标签: c# winforms events drag-and-drop

我有一个带有标题栏的Form对象。

我需要一种纯托管方式(P / Invoke-free,Mono和.NET兼容,最好是.NET 2.0 API)来检测 FORM 本身何时开始被拖动,更改位置和当它被删除(不是任何内容)。

我过去在Mono做过这个,但我不记得怎么了,我不知道我的解决方案是否与MS.NET兼容......

如果有人可以提供一个示例,我可以通过三个事件名称来查看更多详细信息或指向相关的StackOverflow问题,我将不胜感激。到目前为止,我的搜索没有返回任何相关结果......

1 个答案:

答案 0 :(得分:6)

您是在谈论实际的拖放操作,还是在用户移动表单时?如果它是移动本身,您可以使用ResizeBegin事件,该事件在用户开始移动表单时引发。这与LocationChangedResizeEnd一起应该满足您的需求。但是,当您开始和结束调整表单的大小时,当然也会引发ResizeBeginResizeEnd事件,而不仅仅是在您移动它时。