如何使C#选项卡在窗体之间切换

本文关键字:窗体 之间 何使 选项 | 更新日期: 2023-09-27 18:26:45

我想知道是否可以在VS Express 2010中使用选项卡(如Google Chrome或许多其他程序)在不关闭任何窗口的情况下在表单之间切换。

我知道工具箱中有选项卡控制项,但据我所知,你需要在同一个窗体中创建选项卡内容。我正在寻找一种在窗体之间切换的方法,就像我在每个窗体(工作人员、客户、文本)的顶部放上按钮一样,打开我单击的窗体并关闭我所在的窗体,但不更改主窗口。

如何使C#选项卡在窗体之间切换

您可以使用MDI父方法。如果我理解正确,这个链接将对你有所帮助。

你希望它在同一个窗口中。

  1. 将此代码this.IsMdiContainer = true;添加到主窗体。

  2. 为每次单击菜单或按钮创建新表单。

    Form1 frm1;
    Form2 frm2;
    Form3 frm3;
    
  3. 创建此函数并调用每次点击按钮以隐藏所有表单

    private void HideForms()
    {
        int frmCount = this.MdiChildren.Count<Form>();
        if (frmCount > 0)
        {
            for (int i = 0; i < frmCount; i++)
            {
                 this.MdiChildren[i].Hide();
            }
        }
    }
    
  4. 在那个按钮1、按钮2、…之后,。。。点击事件

    private void button1_clicked(...)
    {
        HideForms();
        if ((frm1 == null) || (frm1.IsDisposed))
            frm1 = new Form1();
        frm1.MdiParent = this;
        frm1.Dock = DockStyle.Fill;
        frm1.Show();
        frm1.BringToFront();
    }