Я использую элемент управления диаграммой С#, чтобы нарисовать график Найквиста. Теперь я хочу, чтобы точки данных появлялись на кривой каждый раз, когда пользователь перемещает по ней мышь. Поэтому я использовал метод проверки попадания в событии GetToolTipText.
private void BodePlot_GetToolTipText(object sender, ToolTipEventArgs e)
{
HitTestResult result = BodePlot.HitTest(e.X, e.Y);
selectDataPoint = null;
if (result.ChartElementType == ChartElementType.DataPoint)
{
selectDataPoint = (DataPoint)result.Object;
e.Text = selectDataPoint.ToString();
}
{
Проблема в том, что только часть кривой показывает значения, а другие нет. Когда я использую e.Text = result.Object.ToString();
, чтобы получить объект, на который указывает мышь, вот что я нашел:
Вместо отображения точек данных текст во всплывающей подсказке показывает пользовательскую метку. Итак, я предполагаю, что причина в том, что кривая покрыта метками осей x и y.
Единственное решение, которое я нашел, это отключение осей x и y, с этим все работает нормально. Но я хочу сохранить эти оси, так как я могу скрыть эти метки под кривой.