1

我正在尝试从图表中的鼠标单击事件中检索系列名称。我查看了文档,包括HitTestResult Class,从中我收集到我应该能够使用 HitTestResult.Series 获取系列。

当我尝试这个时,我得到“非静态字段需要对象引用,...”错误。虽然我理解(尽管是粗略的理解)这个错误指的是什么,主要来自对 stackoverflow 上其他人的问题的回答,但我对我的代码中发生的事情感到茫然。

注意:当我输入“HitTestResult.”时,系列不是 IntelliSense 中的选项;相反,仅有的两个选项是 Equals 和 ReferenceEquals。

任何想法或见解都值得赞赏。谢谢!!

示例代码:

private void myChart_MouseClick(object sender, MouseEventArgs e)
 {
   HitTestResult seriesHit = myChart.HitTest(e.X, e.Y);
    if (seriesHit.ChartElementType == ChartElementType.DataPoint)
    {
      MessageBox.Show("Selected by Series!");
      // ^^ This, as a test box, works fine...
      parameterNameStr = HitTestResult.Series.Name;
      // ^^ This is what I want but is causing trouble!
 }
   else if (seriesHit.ChartElementType == ChartElementType.LegendItem)
    {
      MessageBox.Show("Selected by Legend!!");
    }
   else
    {
      MessageBox.Show("Whoops, try again!");
    }
 }  
4

1 回答 1

3

傻我。我就在那儿,只是没想到...

这是有效的:

[...]
   parameterNameStr = seriesHit.Series.Name;
                    // ^^^^^ Simple fix!!
[...]
于 2013-09-04T19:20:13.983 回答