我有一組標籤頁,我需要在運行時更改內容(控件)。頁面可能由組合框,文本框和標籤組成,我想用一個按鈕替換整個選項卡。我讀過的是,要做到這一點的方法是刪除標籤頁,而不是循環瀏覽頁面上的所有控件並設置其可見性,這根本不起作用。我有以下代碼:動態修改winform標籤頁
foreach (TabPage t in tabControl1.TabPages)
{
tabControl1.Controls.Remove(t);
}
newPanelButton = new Button();
newPanelButton.Text = "0% Complete";
newPanelButton.Location = new Point(117, 75);
newPanelButton.Height = 80;
newPanelButton.Width = 200;
TabPage tabPage = new TabPage();
tabPage.Controls.Add(newPanelButton);
tabControl1.Controls.Add(tabPage);
Refresh();
該代碼有沒有任何影響,因爲如果它甚至不存在。現有的控件和頁面根本不會改變。我錯過了什麼?
是否檢查被實際執行這個代碼? – waldrumpus
爲什麼要使用'tabControl1.TabPages.Remove(t);'刪除標籤頁,並添加一個tabpage爲'tabControl1.Controls.Add(tabPage);'?保持添加/刪除tabpage同步的方法,將是我的第一個建議。 – Maarten
是的代碼正在執行。如果我不刪除標籤頁,那麼更改標籤頁內容的方法是什麼? – Gary