转载来自http://blog.youkuaiyun.com/lllljz/article/details/7616935
(1)用getTollTip事件处理
//先在窗体Load函数中注册事件
private void Form_Load()
{
chart.GetToolTipText += new EventHandler<ToolTipEventArgs>(chart_GetToolTipText);
}
//在具体事件处理函数中给出处理方法
/*用chart的mousemove时间,实时跟踪鼠标最近的X轴的位置,然后把cursorX设置到那个位置上,让用户知道我是选的那一个X的值,同时用tooltip显示该X轴上所有的Y值*/
void chart_GetToolTipText(object sender, ToolTipEventArgs e)
{
if (e.HitTestResult.ChartElementType == ChartElementType.DataPoint)
{
int i = e.HitTestResult.PointIndex;
DataPoint dp = e.HitTestResult.Series.Points[i];
//分别显示x轴和y轴的数值,其中{1:F3},表示显示的是float类型,精确到小数点后3位。
e.Text = string.Format("次数:{0};数值:{1:F3} ", dp.XValue, dp.YValues[0]);
}
}
(2)直接用鼠标悬停事件处理
//首先还是必须先注册事件
chart.MouseHover += new EventHandler(chart_MouseHover);
//事件处理方法
void chart_MouseHover(object sender, EventArgs e)
{
if (chart.Series.Count!=0)//这里判断是否包含Series,也可以用Series.Contains()
{
for (int i = 0; i < chart.Series["Series1"].Points.Count; i++)
{
chart.Series["Series1"].Points[i].ToolTip = "#VAL";//获取值,可以酌量添加
}
}
}