График MS, даты по оси X и взаимодействие с курсором, когда значение X индексируется

Добрый день,

Ух какой заголовок.

В основном вот в чем дело.

Если есть временной ряд, который не является непрерывным.

Следовательно, поскольку я использую свойство IsXValueIndexed Series (установленное в true), чтобы свернуть пространство между отдельными точками.

Это отлично работает, однако теперь я хотел бы иметь возможность восстанавливать детали точки из графика (значения X и Y) и отображать их в метке в форме.

Следовательно, я использую следующее событие:

void myChart_CursorPositionChanging(object sender, CursorEventArgs e)
    {
        if (!double.IsNaN(e.NewPosition))
        {
            if (e.Axis.AxisName == AxisName.X)
            {
                lbl_selDate.Content = DateTime.FromOADate(e.NewPosition);
            }
            else
            {
                lbl_selValue.Content = e.NewPosition;
            }
        }
    }

Проблема в том, что дата неверна... Я не могу найти правильный метод преобразования, чтобы восстановить эту чертову временную метку.

Не могли бы вы мне помочь?

Спасибо!

Джереми


person SRKX    schedule 09.06.2010    source источник


Ответы (1)


предположим, что у вас есть ось x типа DateTime, затем используйте:

DateTime xValue = DateTime.FromOADate(((Chart)sender).Series[0].Points[(int)e.NewPosition - 1].XValue)

предположим, что у вас есть ось Y типа double, затем используйте:

double yValue = ((Chart)sender).Series[0].Points[(int)e.NewPosition - 1].YValues[0];
person Asif    schedule 28.04.2011