1
我已經從我的代碼中粘貼了兩個函數。它們用於在tabcontrol中添加一個選項卡並刪除tabcontrol中的一個選項卡。這兩個函數都在tabcontrol駐留的相同表單中。如何找到tabcontrol中的選項卡使用c#windows應用程序關閉它
我能夠輕鬆添加的選項卡中的tabcontrol。我從另一個類調用AddTab()。它完美的作品。
我試圖做同樣的事情從另一個類中刪除選項卡。但是tabpage tp總是返回null,即使tabcontrol中仍然有兩個選項卡。
我在想什麼?
public void AddTab(string strProcessName)
{
try
{
Global.ExistingTabProcessNames.Add(strProcessName);
this.Show();
//this below line dosent makes duplicate tabs.
TabPage tp = new TabPage();
tp.Text = strProcessName;
tp.Name = strProcessName;
tabControl1.TabPages.Add(tp);
//Activate the newly created Tabpage.
tabControl1.SelectedTab = tp;
tabControl1.ItemSize = new Size(200, 32);
tp.Height = tp.Parent.Height;
tp.Width = tp.Parent.Width;
}
catch (Exception ex)
{
}
}
public void RemoveUnusedTabs(string strTabToRemove)
{
TabPage tp = tabControl1.TabPages[strTabToRemove];
tp.Controls.Remove(this);
tabControl1.TabPages.Remove(tp);
}
我從下面像其他類調用RemoveUnusedTabs ..
//該類創建一個實例。 任務欄RemoveTabs =新的任務欄(); RemoveTabs.RemoveUnusedTabs(strTabtoRemove);
什麼是tp.Controls.Remove的意圖(這個);在RemoveUnusedTabs()中?你還可以發佈代碼調用RemoveUnusedTabs() – 2009-10-06 09:55:46
增加了調用函數的代碼。只需爲該類創建一個實例並調用該函數即可。而已??任何問題 ?? 這就是我怎麼做我的附加功能也... – Anuya 2009-10-06 09:57:06
@Frank Bollack,反正標籤頁TP在第一線返回NULL本身.... @ .... TabPage的TP = tabControl1.TabPages [strTabToRemove] – Anuya 2009-10-06 10:07:15