Ich benutze ZedGraph, um meine Plots in C# zu zeichnen. Ich muss wissen, welcher Balken (im Balkendiagramm) mit der Maus angeklickt wurde. Wie kann ich das machen? Gibt es eine Möglichkeit, einen Balken durch einen Punkt zu bekommen und zum Beispiel die Farbe des Balkens zu ändern?ZedGraph C# Balkendiagramm - Wie überprüft man, welcher Balken mit der Maus angeklickt wurde?
6
A
Antwort
4
Verwenden MouseClick
Ereignis und finden Sie die X- und Y-Koordinaten des Punktes, wo Sie geklickt:
zg1.MouseClick+=new MouseEventHandler(zg1_MouseClick3);
private void zg1_MouseClick3(object sender, MouseEventArgs e)
{
PointF pt = (PointF)e.Location;
double x,y;
((ZedGraphControl)sender).MasterPane[0].ReverseTransform(pt, out x, out y);
// Do something with X and Y
}
Beachten Sie, dass ich davon ausgegangen, wir sind auf der ersten Scheibe (Index 0) arbeitet, aber wenn es nicht der Fall ist Dann müssen Sie herausfinden, auf welchen Bereich geklickt wurde (siehe example).
Wenn Sie X- und Y-Position haben, sollten Sie leicht erraten können, auf welche Leiste geklickt wurde und was Sie mit diesen Informationen benötigen.
Genau was ich brauchte! – Tim