ToolTipController toolTipController = new ToolTipController();
//....
private void chartControl_MouseMove(object sender, MouseEventArgs e) {
ChartHitInfo hitInfo = chartControl.CalcHitInfo(e.Location);
StringBuilder builder = new StringBuilder();
if(hitInfo.InDiagram)
builder.AppendLine("In diagram");
if(hitInfo.InNonDefaultPane)
builder.AppendLine("In non-default pane: " + hitInfo.NonDefaultPane.Name);
if(hitInfo.InAxis) {
builder.AppendLine("In axis: " + hitInfo.Axis.Name);
if(hitInfo.AxisLabelItem != null)
builder.AppendLine(" Label item: " + hitInfo.AxisLabelItem.Text);
if(hitInfo.AxisTitle != null)
builder.AppendLine(" Axis title: " + hitInfo.AxisTitle.Text);
}
if(hitInfo.InChartTitle)
builder.AppendLine("In chart title: " + hitInfo.ChartTitle.Text);
if(hitInfo.InLegend) {
builder.AppendLine("In legend");
if(hitInfo.Series != null && !hitInfo.InSeries)
builder.AppendLine(" Series: " + ((Series)hitInfo.Series).Name);
}
if(hitInfo.InSeries)
builder.AppendLine("In series: " + ((Series)hitInfo.Series).Name);
if(hitInfo.InSeriesLabel) {
builder.AppendLine("In series label");
builder.AppendLine(" Series: " + ((Series)hitInfo.Series).Name);
}
if(hitInfo.InSeriesPoint) {
builder.AppendLine(" Argument: " + hitInfo.SeriesPoint.Argument);
if(!hitInfo.SeriesPoint.IsEmpty)
builder.AppendLine(" Value: " + hitInfo.SeriesPoint.Values[0]);
}
if(hitInfo.InAnnotation)
if(hitInfo.Annotation is TextAnnotation)
builder.AppendLine("In annotation: " + ((TextAnnotation)hitInfo.Annotation).Name);
else if(hitInfo.Annotation is ImageAnnotation)
builder.AppendLine("In annotation: " + ((ImageAnnotation)hitInfo.Annotation).Name);
if(builder.Length > 0)
toolTipController.ShowHint("Hit-testing results:\n" + builder.ToString(), chartControl.PointToScreen(e.Location));
else
toolTipController.HideHint();
}
void chart_MouseLeave(object sender, EventArgs e) {
toolTipController.HideHint();
}
05-29
304
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交