从儿童控制中提升容器控制鼠标事件

时间:2013-12-22 17:32:54

标签: c# winforms mouseevent

我需要获取拥有PictureBox的控件的鼠标事件(不填充停靠)。问题是鼠标悬停在PictureBox上时不会引发鼠标事件。

我附带的解决方案是处理PictureBox事件并将其传递给控件,​​如下所示:

    void pictureBox_MouseClick(object sender, MouseEventArgs e)
    {
        //Correct mouse coordinate from PictureBox to control
        Point p = this.PointToClient(Cursor.Position);
        var e2 = new MouseEventArgs(e.Button, e.Clicks, p.X, p.Y, e.Delta);
        this.OnMouseClick(e2);
    }

这是解决问题的好方法吗?我担心我在这里“重新发明轮子”。

0 个答案:

没有答案