MSChart最近的数据点

时间:2011-10-27 07:28:12

标签: vb.net charts mschart

我使用Mschart制作图表。我想要得到的是最近的数据点,点击图表。问题是我在HitTest值和数据点x / y值之间找不到任何连接。

说,我点击了以下几点:

Dim result As HitTestResult = Chart.HitTest(e.X, e.Y)

我现在点击了X和Y的值。 如何将其与数据点值相关联?

我想要实现的是双击图表,该图表会找到最近的数据点(x,y为整数),并且知道这些值,我将能够根据用户需要的位置重新计算其他值。双击。

任何提示? P上。

编辑:

到目前为止,它把我带到了这里:

Dim selectedDataPoint As DataPoint = Nothing
    Dim hitResult As HitTestResult = Chart.HitTest(e.X, e.Y)

    If hitResult.ChartElementType = ChartElementType.DataPoint Then
        Me.Cursor = Cursors.Cross
        selectedDataPoint = CType(hitResult.Object, DataPoint)
        MsgBox(selectedDataPoint.Name)
        MsgBox(selectedDataPoint.XValue.ToString)
        MsgBox(selectedDataPoint.YValues(0).ToString)
    End If

不幸的是,XValue给了我“0”作为输出,其实我的字符串值由“weeknumber / yearnumber”组成。知道为什么会这样吗?

1 个答案:

答案 0 :(得分:3)

我找到了问题的答案。请查看以下所有感兴趣的代码:

If hitResult.ChartElementType = ChartElementType.DataPoint Then
            Me.Cursor = Cursors.Cross
            selectedDataPoint = CType(hitResult.Object, DataPoint)
            lblY.Text = selectedDataPoint.YValues(0).ToString
            lblX.Text = selectedDataPoint.AxisLabel.ToString
End if