2012-06-22 60 views
2

tabcontrol的mousedown事件只捕獲Tabcontrol頂部選項卡上的鼠標點擊,而不是控件內部添加的內容(白色空間)。C#Tabcontrol捕獲mousedown事件

有沒有一種方法來捕獲在tabcontrol裏面創建的mousedown事件?

+0

試圖把另一個控制標籤的容器中,然後用其事件 – Boomer

+0

啊,這真的是唯一的出路?因爲我已經在選項卡的容器中有很多控件。 – l46kok

+1

TabControl只是頂部的標籤條。其餘的是TabPage。哪獲得鼠標事件。 –

回答

3

tabcontrol內的tabpages是自己的控件,您可以在其上捕獲鼠標事件。 如果從設計師的加入,可以將其添加到特定的標籤頁直接

private void tabPage1_Click(object sender, EventArgs e) 
    { 

    } 

或更通用的方法,通過增加一個事件到所有現有的TabPages(如果該頁面是動態的,你可能想趕上tabadded /除去事件太)

 foreach(TabPage tp in tabControl1.TabPages) 
      tp.Click += new EventHandler(YourClickEventHandler);