2017-07-27 64 views
1

我有一個自定義UserControl,它包含一個圖片框和一個標籤。我希望在用戶雙擊UserControl邊界內的任何位置時發生任何事情。但是,圖片框和標籤阻止了UserControl捕獲的雙擊事件,因此只有在點擊未被圖片框或標籤遮擋的區域時纔會註冊雙擊。從兒童活動中激發父事件Visual Studio

我試圖迫使該圖片框和標籤雙擊事件調用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

試試這個代碼,它爲我工作:

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); 
} 
+0

這是它。我使用的是「OnMouseDoubleClick」而不是「OnDoubleClick」。 – Alex