我有一个包含图片框和标签的自定义UserControl。我想要在用户双击UserControl边界内的任何地方时发生某些事情。但是,图片框和标签阻止双击事件被UserControl捕获,因此双击只会在单击未被图片框或标签遮挡的区域时进行注册。
我尝试在图片框和标签上强制双击事件以调用UserContol的OnMouseDoubleClick()
函数,但它没有按预期工作:
pictureBox1.MouseDoubleClick += Double_Click;
label1.MouseDoubleClick += Double_Click;
...
private void Double_Click(object sender, MouseEventArgs e)
{
// Raises UserControl's double-click event
this.OnMouseDoubleClick(e);
}
为什么双击图片框或标签不会引发UserControl的OnMouseDoubleClick事件?
答案 0 :(得分:0)
试试这段代码,它对我有用:
label1.DoubleClick += label1_DoubleClick;
pictureBox1.DoubleClick += pictureBox1_DoubleClick;
private void label1_DoubleClick(object sender, EventArgs e)
{
OnDoubleClick(e);
}
private void pictureBox1_DoubleClick(object sender, EventArgs e)
{
OnDoubleClick(e);
}