TabControl:如何讓TabPage顯示或隱藏
因為TabPage沒有 Visible property可以直接設定,所以依靠谷大哥才找到這個方法…
例題說明:畫面右邊有3個RadioButton,左邊有一個TabControl;依RadioButton的選擇,切換TabPage 且其它項目應隱藏。
作法說明:
1. 先設定一開始要顯示的部份:
public FrmSystemManage()
{
InitializeComponent();
this.tabPage1.Parent = null;//隱藏
this.tabPage2.Parent = null;//隱藏
this.tabPage3.Parent = this.tabControl2;//顯示
}
2. 點了第一個radio button,改顯示另一個TabPage
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
RadioButton rb1 = sender as RadioButton;
if (rb1.Checked)
{
this.tabPage1.Parent = this.tabControl2;//顯示
this.tabPage2.Parent = null;//隱藏
this.tabPage3.Parent = null;//隱藏
}
}
3. 點了第二個radio button,改顯示另一個TabPage
private void radioButton2_CheckedChanged(object sender, EventArgs e)
{
RadioButton rb2 = sender as RadioButton;
if (rb2.Checked)
{
this.tabPage1.Parent = null;//隱藏
this.tabPage2.Parent = this.tabControl2;//顯示
this.tabPage3.Parent = null;//隱藏
}
}
當然網路上還有一些其它的做法,比如用第三方的元件或是用Remove and Add的方法,但是用起來好像都沒有上述的方法簡單好用。
Remove and Add的方法:
TabControl.Remove(TabPage); //Remove a tab page
TabControl.Add(TabPage); //Add a tab page
TabControl.Insert(2, TabPage); //Insert a tab page at specific location
沒有留言:
張貼留言