我已经看过这个关于完全相同问题的线程,但该解决方案对我不起作用.
基本上我想要完成的是当用户与Windows窗体上的图表控件交互时的鼠标滚轮事件.
现在我尝试了一些不同的东西.
public mainForm()
{
InitializeComponent();
this.chData.MouseWheel +=new MouseEventHandler(chData_MouseWheel);
}
Run Code Online (Sandbox Code Playgroud)
我也尝试将其添加到mainForm.Designer.cs:
this.chData.TabIndex = 2;
this.chData.Text = "chart2";
this.chData.MouseWheel +=
new System.Windows.Forms.MouseEventHandler(this.chData_MouseWheel);
this.chData.MouseClick +=
new System.Windows.Forms.MouseEventHandler(this.chData_MouseClick);
this.chData.MouseDoubleClick +=
new System.Windows.Forms.MouseEventHandler(this.chData_MouseDoubleClick);
this.chData.MouseMove +=
new System.Windows.Forms.MouseEventHandler(this.chData_MouseMove);
Run Code Online (Sandbox Code Playgroud)
(我在这里包括整个块用于演示).我也有如下定义的功能:
private void chData_MouseWheel(object sender, MouseEventArgs e)
{
MessageBox.Show("FJDKS");
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,我无法解决这个问题?谁能告诉我哪里出错了?提前致谢!
什么时候应该做以下事情?
class Foo : Control
{
protected override void OnClick(EventArgs e)
{
// new code here
}
}
Run Code Online (Sandbox Code Playgroud)
与此相反?
class Foo : Control
{
public Foo()
{
this.Click += new EventHandler(Clicked);
}
private void Clicked(object sender, EventArgs e)
{
// code
}
}
Run Code Online (Sandbox Code Playgroud)