2010-12-20 49 views
1

在使用Framework 2.X的C#Windows窗體應用程序中,單擊選項卡控件不會向子控件(例如丟失的焦點事件)發送消息。使用Microsoft Spy ++,我看不到發送給我的子控件的消息。當我點擊託管控件的選項卡時,我確實收到了消息。更改選項卡中的選項卡控件不會向子控件發送消息

我需要做什麼才能讓我的子控件知道它在標籤更改後不顯示。我希望代碼在控制中,而不是父級。我猜測我錯過了一些事件或註冊。

由於提前,

克雷格

回答

1

我猜,我錯過了一些事件或註冊。

我不認爲你是。

丟失的焦點事件會很快,因爲它發生在頁面更改之前。

子控件的VisibleChanged事件僅在顯示父級TabPage時觸發,而不在隱藏時不觸發,而不是您想要的。您可以處理TabPage.VisibleChangedTabControl.SelectedIndexChanged。這當然是從父母而不是孩子,這也不是你想要的。

意外地,我相信TCM_SETCURSEL消息發送到選項卡更改控件(再次沒有幫助與「不在父requriement」