MSChart Ближайшая точка данных
Я использую Mschart для создания диаграмм. Я пытаюсь получить ближайшую точку данных, по которой я нажимаю на график. Проблема в том, что я не могу найти никакой связи между значениями HitTest и значениями x/y точки данных.
Скажем, я нажал на следующий пункт:
Dim result As HitTestResult = Chart.HitTest(e.X, e.Y)
Теперь у меня есть значения X и Y, где я щелкнул. Как связать это со значениями точек данных?
Чего я хочу добиться - это дважды щелкнуть по диаграмме, которая найдет ближайшую точку данных (x,y как целое число), и, зная эти значения, я смогу пересчитать другие значения в зависимости от того, где это нужно пользователю, и дважды щелкнуть мышью.,
Есть намеки? П.
РЕДАКТИРОВАТЬ:
Пока это привело меня сюда:
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 ответ
Ну, я нашел ответ на свой вопрос. Пожалуйста, смотрите код ниже всех, кто заинтересован:
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