3 回答
TA贡献1804条经验 获得超8个赞
当鼠标单击引发单击事件时,如果您处理Click事件,则 的运行时类型e将MouseEventArgs如 Jimi 在评论中提到的那样。
但在某些控件中,例如Button,您可以Click在没有实际鼠标单击的情况下引发事件,例如通过调用button1.PerformClick()或 当按钮是AcceptButton表单的并且您按 时Enter,或者如果您按按钮的助记键组合或当按钮具有焦点时然后你按Space. 在这种情况下, 的运行时类型e是EventArgs。
如果您对鼠标单击感兴趣并且希望接收eas MouseEventArgs,那么您应该处理MouseClick事件。
例如:
picttureBox1.MouseClick += PicttureBox1_MouseClick;
进而:
private void PicttureBox1_MouseClick(object sender, MouseEventArgs e)
{
}
TA贡献1875条经验 获得超5个赞
存在哪些事件、它们采用哪些参数、以及何时调用它们以及赋予它们哪些值完全取决于该类的作者。作为此代码的单纯用户,您无法更改它。
您可以创建 Picature Box 的子类,在其中添加您自己的事件“ClickWithExtraArguments”或类似的事件。但提高它来代替默认值可能并不容易。有时“RaiseEvent[X]”代码被标记为受保护,因此您可以覆盖它。RaiseMouseEvent 就是其中之一,但这确实深入到事件处理。
您试图通过事件参数提供什么信息?您不能简单地检索现有 Click 事件处理程序中的信息吗?
- 3 回答
- 0 关注
- 131 浏览
添加回答
举报