相关疑难解决方法(0)

鼠标滚轮事件未触发

我已经看过这个关于完全相同问题的线程,但该解决方案对我不起作用.
基本上我想要完成的是当用户与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)

不幸的是,我无法解决这个问题?谁能告诉我哪里出错了?提前致谢!

c# events charts mousewheel winforms

18
推荐指数
1
解决办法
1万
查看次数

如何在.Net WinForms图表控件中检索所选范围?

我正在使用C#内置的Winforms Chart控件(System.Windows.Forms.DataVisualization.Charting.Chart),它具有内置功能,允许用户选择一个范围.我想做的是回读用户选择的范围.当然必须有一些简单的方法来做到这一点,但我一直无法找到它.

光标启用如下:

var ca = chart1.ChartAreas["ChartArea1"].CursorX;
ca.CursorX.IsUserEnabled = true;
ca.CursorX.IsUserSelectionEnabled = true;
Run Code Online (Sandbox Code Playgroud)

我知道当用户通过启用选择范围时我可以使图表变焦ca.AxisX.ScaleView.Zoomable,但我不希望图片改变:相反,我使用图表作为显示信息的方式,让用户选择一个范围然后我做了一些额外处理的X值.

我尝试连接到chart1.SelectionRangeChanged,并且每次更改范围时确实会触发 - 我似乎无法从CursorEventArg中获取选择范围.它有" NewSelectionStart"和" NewSelectionEnd"字段,但这些都是NaN令人失望的.我试着查看图表和轴的各种属性,但没有找到任何听起来很有希望的东西.

进一步的调查揭示了ChartArea.CursorX.SelectionStart属性,这听起来正是我需要的......除了它也是NaN.我不知道这是正常还是我遇到某种错误?

那么,我该如何确定用户选择的范围?

c# charts winforms

6
推荐指数
1
解决办法
5024
查看次数

标签 统计

c# ×2

charts ×2

winforms ×2

events ×1

mousewheel ×1