Вы можете обработать MouseHover
событие графика и получить точку данных, а затем установить позицию курсора SetCursorPosition
:
private void chart1_MouseHover(object sender, EventArgs e)
{
var p = chart1.PointToClient(MousePosition);
chart1.ChartAreas[0].CursorX.SetCursorPixelPosition(p, true);
}
Вам также нужно обработать MouseMove
и защитить вызов ResetMouseEventArgs
метод контроля для повышения MouseHover
, как и ожидалось:
private void chart1_MouseMove(object sender, MouseEventArgs e)
{
var ResetMouseEventArgs=
chart1.GetType().GetMethod("ResetMouseEventArgs",
System.Reflection.BindingFlags.NonPublic |
System.Reflection.BindingFlags.Instance);
ResetMouseEventArgs.Invoke(chart1, null);
}