从儿童活动Visual Studio中解雇父母活动

时间:2017-07-27 16:09:24

标签: c# .net winforms user-controls

我有一个包含图片框和标签的自定义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事件?

1 个答案:

答案 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);
}