How to get a right click mouse event? Changing EventArgs to MouseEventArgs causes an error in Form1Designer?(如何获得鼠标右键事件?将 EventArgs 更改为 MouseEventArgs 会导致 Form1Designer 出现错误?)
问题描述
我有一种方法可以检测Visual Studio通过双击表单进行的左键单击事件.
I have a method to detect the left click event that visual studio made by double clicking on the form.
private void pictureBox1_Click(object sender, EventArgs e)
{
MessageBox.Show("Left click");
}
我想通过右键单击同一个对象来获得右键单击事件.
I want to have a right-click event by right-clicking on the same object.
我在网上看到你可以使用这个开关:
I read online that you can use this switch:
private void pictureBox1_Click(object sender, EventArgs e)
{
if (e.Button == System.Windows.Forms.MouseButtons.Right){MessageBox.Show("Right click");}
if (e.Button == System.Windows.Forms.MouseButtons.Left){MessageBox.Show("Left click");}
}
问题在于,当我执行 e.Button 时,它会产生错误错误:
The trouble is that when I do e.Button it has has yields an error error:
System.EventArgs 不包含 Button 的定义...
System.EventArgsdoes not contain a definition forButton...
所以我通过将 EventArgs.e 更改为 MouseEventArgs.e
So I fix this by changing the EventArgs.e to MouseEventArgs.e
但是在Form1Designer中出现了一个新的错误,事件行是:
But then there is a new error in Form1Designer where the event line is:
this.pictureBox1.Click += new System.EventHandler(this.pictureBox1_Click);
错误提示:
pictureBox1_Click 没有重载匹配委托 System.EventHandler
我该如何解决这个问题?感谢阅读
How do I fix this? Thanks for reading
推荐答案
您应该在 click 事件处理程序中引入强制转换
You should introduce a cast inside the click event handler
MouseEventArgs me = (MouseEventArgs) e;
这篇关于如何获得鼠标右键事件?将 EventArgs 更改为 MouseEventArgs 会导致 Form1Designer 出现错误?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何获得鼠标右键事件?将 EventArgs 更改为 MouseEventArgs 会导致 Form1Designer 出现错误?
基础教程推荐
- 获取C#保存对话框的文件路径 2022-01-01
- 重新排序 WPF TabControl 中的选项卡 2022-01-01
- 如果条件可以为空 2022-01-01
- Mono https webrequest 失败并显示“身份验证或解密失败" 2022-01-01
- C# 9 新特性——record的相关总结 2023-04-03
- 将数据集转换为列表 2022-01-01
- 更新 Visual Studio 中的 DataSet 结构以匹配新的 SQL 数据库结构 2022-01-01
- SonarQube C# 分析失败“不是指针的有效行偏移" 2022-01-01
- 在 VB6 或经典 ASP 中使用 .NET 2022-01-01
- 从 C# 控制相机设备 2022-01-01
