2011-07-03 58 views
1

我有Form1其中有一個TabControltabControl1內有2 TabPages,即tabpage1tabpage 2。我想知道是否有可能禁用tabpage2的選擇,除非滿足所有標準tabpage1如何防止選擇TabPage,除非另一個TabPage的條件滿足?

我沒有看到任何啓用或每個單獨的頁面的可見屬性。

+0

默認禁用tabpage2。需要回發到服務器以在tabpage1上進行驗證。如果isValid,則啓用tabpage2。您可以異步執行回發,以便用戶看不到回發。 –

+0

這裏有一些信息讓你去 - http://asplib.net/docs/asplib/TabStrip_ValGroup.html –

+0

我道歉..我忘了提及,我正在寫一個桌面應用程序。我將同樣編輯問題。 –

回答

3

您可以掛鉤TabControl.SelectedIndexChanged事件,或者在某些情況下,您可以更好地掛入TabControl.Selecting事件。

然後在事件中驗證您所使用的選項卡的標準,如果它是好的,那麼您很好,如果它不是完整/無效,那麼您可以取消選項卡更改(使用e.Cancel,例如來自選擇事件,參見鏈接頁面上的示例),從而使您立即回到原來的位置,並希望使用消息框或其他方式向用戶顯示輸入有什麼問題。

+0

感謝CURTISK! –