0

我正在使用 Win Form VS 2010 C#。

我在表单加载上有以下代码

pictureBox2.MouseClick +=new MouseEventHandler(pictureBox2_Click);
pictureBox2.DoubleClick += new EventHandler(pictureBox2_Click);
pictureBox2.Click += new EventHandler(pictureBox2_Click);
pictureBox2.MouseDoubleClick += new MouseEventHandler(pictureBox2_Click);

这在事件

private void pictureBox2_Click(object sender, EventArgs e)
{
    // Hides and disables another picture box
    pictureBox1.Enabled = false;
    pictureBox1.Visible = false;
    // more codes here...
}

它不想触发事件。为了确定,我什至添加了切换断点,但它永远不会停在那里。

我的pictureBox2 有一个属性BackColor Transparent。这有什么关系吗?

4

1 回答 1

2

听起来一切都应该正常,所以我的想法是:

  1. 如果您使用 .Click 而不是 .MouseClick 会发生什么?有什么区别吗?

  2. 如果将事件处理程序的创建移到 InitializeComponent() 中(或在 InitializeComponent() 之后)而不是表单加载事件中,会发生什么?有什么区别吗?

  3. 您的图片框顶部的另一个控件接收点击而不是您的图片框是否存在某种问题?

  4. 如果您怀疑透明背景色可能有问题,为什么不更改它,看看是否能解决问题?然后你就会得到你的答案。

  5. 解决方案)在@HenryHughes 评论说他最终通过简单地从头开始重新创建 Visual Studio 项目解决了原始问题之后,添加了编辑以进行澄清。

于 2013-10-25T04:21:56.663 回答