zobacz wartości punktów wykresu, gdy mysz znajduje się w punktach
Mam wykres i chcę, aby użytkownik zobaczył wartości, gdy wskaźnik znajduje się w punktach. Korzystając z pomocy digEmAll na stronieznajdowanie wartości punktów na wykresie , Mógłbym napisać następujący kod:
Point? prevPosition = null;
ToolTip tooltip = new ToolTip();
void chart1_MouseMove(object sender, MouseEventArgs e)
{
var pos = e.Location;
if (prevPosition.HasValue && pos == prevPosition.Value)
return;
tooltip.RemoveAll();
prevPosition = pos;
var results = chart1.HitTest(pos.X, pos.Y, false, ChartElementType.PlottingArea);
foreach (var result in results)
{
if (result.ChartElementType == ChartElementType.PlottingArea)
{
chart1.Series[0].ToolTip = "X=#VALX, Y=#VALY";
}
}
}
powyższym kodem użytkownik może zobaczyć wartości, gdy wskaźnik jestblisko seria.Ale teraz Jak mogę pozwolić użytkownikowi zobaczyć wartości tylko wtedy, gdy wskaźnik jestna punkty? Wymieniłem
int k = result.PointIndex;
if (k >= 0)
{
chart1.Series[0].Points[k].ToolTip = "X=#VALX, Y=#VALY";
}
zamiast
chart1.Series[0].ToolTip = "X=#VALX, Y=#VALY";
rozwiązać mój problem.Ale to nie było przydatne.