c# – 使用MouseHover使PictureBox可见/不可见

我认为这是一个愚蠢的问题,但我不明白这里发生了什么.

我用这个代码:

   private void pictureBox1_MouseHover(object sender, EventArgs e)
    {
        pictureBox1.Visible = false;
        pictureBox1.BackColor = Color.Black;
    }

    private void pictureBox1_MouseLeave(object sender, EventArgs e)
    {
        pictureBox1.Visible = true;
    }

问题是:如果鼠标在图片框上方,图片框会将颜色更改为黑色,但可见性不会改变.为什么?

最佳答案 我认为你的问题是,只要你徘徊在图片上它就会消失(这就是为什么你看到背面颜色变成黑色,事件正在发射).然而,图片消失,导致鼠标不在图片上的情况,因此Mouse_Leave事件触发.

点赞