当鼠标悬浮在图表上的某个系列点上时显示相对应的提示信息
#region 指针移动或离开时发生 ToolTipController toolTipController = new ToolTipController(); /// <summary> /// 鼠标移过组件时发生 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void chartControl1_MouseMove(object sender, MouseEventArgs e) { ChartHitInfo hitInfo = chartControl1.CalcHitInfo(e.Location); StringBuilder builder = new StringBuilder(); if (hitInfo.InDiagram) builder.AppendLine("在图"); if (hitInfo.InNonDefaultPane) builder.AppendLine("在非默认的窗格: " + hitInfo.NonDefaultPane.Name); if (hitInfo.InAxis) { builder.AppendLine("中抽线: " + hitInfo.Axis.Name); if (hitInfo.AxisLabelItem != null) builder.AppendLine("标签项目: " + hitInfo.AxisLabelItem.Text); if (hitInfo.AxisTitle != null) builder.AppendLine("抽标题: " + hitInfo.AxisTitle.Text); } if (hitInfo.InChartTitle) builder.AppendLine("图表标题: " + hitInfo.ChartTitle.Text); if (hitInfo.InLegend) builder.AppendLine("In legend"); if (hitInfo.InSeries) builder.AppendLine("系列: " + ((Series)hitInfo.Series).Name); if (hitInfo.InSeriesLabel) { builder.AppendLine("系列标签"); builder.AppendLine("系列: " + ((Series)hitInfo.Series).Name); } if (hitInfo.SeriesPoint != null) { builder.AppendLine("Argument: " + hitInfo.SeriesPoint.Argument); if (!hitInfo.SeriesPoint.IsEmpty) builder.AppendLine("Value: " + hitInfo.SeriesPoint.Values[0]); } if (builder.Length > 0) toolTipController.ShowHint( builder.ToString(), chartControl1.PointToScreen(e.Location)); else toolTipController.HideHint(); } /// <summary> /// 鼠标离开组件时发生 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void chartControl1_MouseLeave(object sender, EventArgs e) { toolTipController.HideHint(); } #endregion