ZedGraph C#条形图 - 如何检查鼠标单击了哪个栏?

Mic*_*zyk 6 c# zedgraph

我正在使用ZedGraph在C#中绘制我的情节.我需要知道鼠标点击了哪个条形图(条形图).我怎样才能做到这一点?有没有办法通过一个点来获得一个条形图,例如改变条形图的颜色?

Gac*_*cek 4

使用MouseClick事件并找到您单击的点的 X 和 Y 坐标:

    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
    }
Run Code Online (Sandbox Code Playgroud)

请注意,我假设我们正在第一个窗格(索引 0)上进行操作,但如果不是您的情况,那么您必须找到单击了哪个窗格(请参阅此示例)。

当您知道 X 和 Y 位置时,您应该能够轻松猜出哪个栏被单击,并利用该信息执行您需要的操作。