C#Winforms与DoubleClick事件和MouseDoubleClick事件之间存在差异

时间:2011-10-11 11:41:35

标签: c# winforms

快速提问: 正如标题所说,这两个事件之间有什么区别?

据我所知,MouseDoubleClick是继承自Control,而DoubleClick是继承自Component,但两者之间是否有任何功能差异?< / p>

由于

5 个答案:

答案 0 :(得分:21)

来自MSDN Documentation

  

DoubleClick事件是控件的逻辑上更高级别的事件。它们可能由其他用户操作引发,例如快捷键组合。

答案 1 :(得分:7)

正如您在此处所见:Control.MouseDoubleClick Event

  

当这样一个控件引发以下一系列事件   用户操作发生:

     

MouseDown事件。

     

点击活动。

     

MouseClick事件。

     

MouseUp事件。

     

MouseDown事件。

     

DoubleClick事件。

     

MouseDoubleClick事件。

     

MouseUp事件。

所以两者之间存在差异,因为MouseDoubleClick意味着要触发所有这些事件。

答案 2 :(得分:6)

我相信这两者之间的关键区别在于事件处理程序,其中“DoubleClick”事件将包含一个简单的EventArgs对象,而“MouseDoubleClick”将包含一个MouseEventArgs,其中包括鼠标的位置等。

所以基本上如果你需要知道控件上的点击发生在哪里,我会赞成将“MouseDoubleClick”放在“DoubleClick”上。

<强>的DoubleClick

private void DoubleClick_Event(object sender, EventArgs e)

<强> MouseDoubleClick

private void MouseDoubleClick_Event(object sender, MouseEventArgs e)

答案 3 :(得分:0)

解释这两个页面如何与两个事件之间的差异

http://msdn.microsoft.com/en-us/library/system.windows.forms.control.doubleclick.aspx

http://msdn.microsoft.com/en-us/library/system.windows.forms.control.mousedoubleclick.aspx

双击由用户操作系统的鼠标设置决定。

当用户在光标位于控件上时快速连续按下两次鼠标按钮时,会发生MouseDoubleClick事件。

问候。

答案 4 :(得分:-4)