簡體   English   中英

單擊按鈕上的“選項卡控件”中的克隆選項卡,然后在Winforms中單擊

[英]Cloning tabs in Tab Control on button click in Winforms

所以我在winform TabControl的TabPage之一上有一個主頁。 我有一個按鈕,使用此Tabs.TabPages.Add("Homepage");添加了一個新標簽Tabs.TabPages.Add("Homepage");

但是TabPages.Add()只會添加一個新的空白頁,我該如何在新選項卡上克隆主頁? 例如,如果我的主頁上有一個按鈕“ Click me”,則當我打開一個新標簽時,我希望它具有與相同事件“ ClickMe_click”鏈接的相同按鈕“ Click me”。 就像Chrome Tab控件一樣。 我找不到msdn上為TabControl內置的任何事件或方法,除非我錯過了它。

任何幫助或暗示或建議,將不勝感激。 謝謝。

您無法如此輕松地克隆標簽頁。 一個可以嘗試,但是推薦的方法是:

  • 創建一個UserControl並將所需的所有控件添加到頁面上。 將其設置為Dock=Fill並添加連接控件的所有代碼。 您可以像在表單或標簽頁中那樣自由布局。

  • 每當您需要此類型的另一個頁面時,請添加一個新的選項卡頁,並將UserControl的實例添加到其Controls集合。

注意:默認情況下, UserControl上的所有控件均為private 這與將它們直接放在選項卡頁上並沒有什么不同。 但是現在它們是UC類的私有成員,因此您的表單及其代碼無法訪問它們。

初學者時看起來像是個問題。 但是,如果您看對的話,這是一個創建更精簡界面的好機會。

  • 解決方案1:根據需要將控件修飾符更改為public

  • 解決方案2:添加屬性以公開您真正想要公開的數據。

另請注意:您可以進行所有布局,但只能在UC設計器中進行。 添加到表單或標簽頁后,將沒有嵌入式設計器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM