C# WINFORM MDI 多重視窗操作,避免重複開啟

C# WINFORM MDI 多重視窗操作,避免重複開啟

要先設定主視窗的IsMdiContainer=True

在開子視窗時的MdiParent = this

 private void ToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            //檢查子視窗是否存在
            //關閉其他所有子視窗
            foreach (Form childForm in this.MdiChildren)
            {
                if (childForm.GetType() == typeof(Form1))
                {
                    // 子視窗存在,設定為焦點並結束函式
                    childForm.Focus();
                    return;
                }

                childForm.Close();
            }

            // 建立目標 WinForm 物件
            Form1 Form1 = new Form1();

            // 將目標 WinForm 顯示在螢幕上           
            Form1.MdiParent = this;
            Form1.Dock= DockStyle.Fill;
            Form1.Show();
        }

 

自我LV~