2

我在 C#4.0 中使用 mschart 来生成折线图,我正在创建 DataPoint 以在点上显示工具提示,但问题是,工具提示出现在线的每个点上,但是,我只想要我的数据点。

4

1 回答 1

2

您可能已经找到了问题的解决方案,因为这篇文章已经很老了。但我想做同样的事情,所以我是这样做的:

首先,当我将数据点添加到 Serie 时,我没有设置数据点的 ToolTip 属性。然后,我使用代码:

public void Form1()
{
   //Add a handler for the GetToolTipText event
   chart1.GetToolTipText += new EventHandler<ToolTipEventArgs>(chart1_GetToolTipText);
}

private void chart1_GetToolTipText(object sender, ToolTipEventArgs e)
{
   //Check selected chart element is a data point and set tooltip text
   if (e.HitTestResult.ChartElementType == ChartElementType.DataPoint)
   {   
      //Get selected data point
      DataPoint dataPoint = (DataPoint)e.HitTestResult.Object;

      //Is it my datapoint?
      if (dataPoint == myDataPoint)
      {
         //Yes, set text
         e.Text = "My data point value " + dataPoint.XValue.ToString() + dataPoint.YValues[0].ToString();
      }
      else
      {
         //No, void string
         e.Text = "";
      }
   }
}
于 2014-01-02T17:08:22.113 回答