2012-01-27 26 views

回答

-1
string ceva = detailChart.Series[1].Points[detailChart.ChartAreas[0].CursorX.Position].GetValueByName("Y").ToString(
+0

它不起作用,CursorX.Position返回一個double座標而不是int索引,因爲Points [...]需要! – Tom 2013-02-13 09:24:12

3

您可以使用MouseMove事件處理函數獲取當前的DataPoint值。

private void chart1_MouseMove(object sender, MouseEventArgs e) 
{ 
    var source = sender as Chart; 
    HitTestResult result = source.HitTest(e.X, e.Y); 

    if (result.ChartElementType == ChartElementType.DataPoint && result.PointIndex != -1) 
    {  
    var xValaue = source.Series[0].Points[result.PointIndex].XValue; 
    var yValaue = source.Series[0].Points[result.PointIndex].YValues[0]; 
    } 
} 
+0

它不適用於多個系列 – 2014-08-22 09:06:49

+0

您可以隨時使用Series [result.Series.Name]替換Series [0]以使其在多個系列上工作(或直接使用result.Series對象)。 – flndr 2017-05-30 21:04:44