public void Show_Form(string FrmName)
{
if (FrmName == "分类设置") //判断当前要打开的窗体
{
bool re = true;
foreach (TabPage page in tabControl_Agr.TabPages)
{
if (page.Text == FrmName)
{
re = false;
this.tabControl_Agr.SelectedTab = page;//激活已打开的窗体
break;
}
}
if (re)//如果没有找到
{
tabControl_Agr.TabPages.Add(???);
this.tabControl_Agr.SelectedTab = ???;
}
}
}
打问号的地方小学教师实习报告 如何用FrmName来表示?
反射
(Form)Assembly.Load("程序集").CreateInstance("类型名称(全限定命名空间+类型名)");
和反射有关系么?
C# codethis.tabControl1.TabPages.Add(FrmName, FrmName);//增加
this.tabControl1.SelectedTab = this.tabControl1.TabPages[FrmName];//激活
但我有一个tabpge的name与FrmName一致里面有内容,你样添加选项内容却没有?!只是新增一个选项卡而已!
我想要的是这样~
窗体加载时不显示选项卡(移除选项卡)!
private void AgrMain_Load(object sender, EventArgs e)
{
foreach (TabPage page in tabControl_Agr.TabPages)
{
if (page.Text != "")
{
tabControl_Agr.TabPages.Remove(page);
}
}
}
当点击菜单时则显示相应的选项卡,则显示出对应的选项卡
#region 单击菜单调用窗体事件
public void Tool_Folk_Click(object sender, EventArgs e)
{
this.Show_Form(sender.ToString().Trim()); //调用方法
}
public void Show_Form(string FrmName)
{
bool re = true;
foreach (TabPage page in tabControl_Agr.TabPages)
{
if (page.Text == FrmName)
{
re = false;
this.tabControl_Agr.SelectedTab = page;//激活已打开的窗体
break;
}
}
if (re)//如果没有找到
{ this.tabControl_Agr.TabPages.Add(this.分类设置);此处是我的一个选项卡名为“分类设置”