2012-02-17 208 views

回答

4

TabControl類提供了一個TabPages property返回TabPageCollection包含控件中的所有TabPages

因此,您可以使用Item property檢索具有指定名稱的TabPage

例如,如果你想要的標籤頁被命名爲 「你好!」,你可以這樣寫:

var tabPage = myTabControl.TabPages["Hello!"]; 

從控制刪除TabPage,使用RemoveByKey method

myTabControl.TabPages.RemoveByKey("Hello!"); 

當然,爲了達到此目的,您需要確保已將TabPage的鍵設置爲與它們顯示的標題文本相匹配。

+0

,擊敗了我! – sambomartin 2012-02-17 22:30:42

+0

謝謝科迪!看着LarsTech的回答,我應該爲了記憶的目的而放棄它,而不是去掉它嗎? – atwellpub 2012-02-17 22:44:21

+0

@atw我會這樣做,只是爲了安全起見。先將其取出,然後進行處置。但你可以擺脫它只是處置它([參考](http://stackoverflow.com/questions/1757116/remove-tabpage-dispose-or-clear-or-both))。 – 2012-02-17 22:44:47

2

你可以嘗試這樣的事情:「你好!」

for (int i = tabControl1.TabPages.Count - 1; i >= 0; i--) { 
    if (tabControl1.TabPages[i].Text == "Hello!") 
    tabControl1.TabPages[i].Dispose(); 
} 

我假設你的意思是對的TabPage的「文本」,因爲將不是控件的有效名稱。

注意:此代碼將處理任何標籤顯示「Hello!」的TabPage。

+0

配置tabpage時,它仍然添加到tabcontrol是一個好主意嗎? – Blorgbeard 2012-02-17 22:30:49

+0

@Blorgbeard我不認爲有任何危險。刪除它不會處理它,而且OP說他希望它「被銷燬」。 – LarsTech 2012-02-17 22:33:11

+0

刪除然後配置我認爲 – sambomartin 2012-02-17 22:35:58