C# MSChart 添加悬停线

C# MSChart add hover Line

当您点击 mschart 时,会出现一条红线,是否可以在将鼠标悬停在图表上时以某种方式添加这条线?我想让这条线在悬停时可见,并将悬停数据点的结果添加到该线或类似的东西下面。到目前为止,我只发现了工具提示,并且能够使用它并在将鼠标悬停在它上面时显示数据点的值。
如果你不知道我在说什么台词:

您可以处理图表的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);
}