0

子コンテナに開いているフォームがあるかどうかを確認するコードがあります。私の問題は、フォームが重ならないように、現在のフォームを閉じて(開いているフォーム)、別のフォームを開く方法です。

       if (MdiChildren.Count() == 0)
        {
            frmLogin f = new frmLogin();
            f.MdiParent = this;
            f.Show();
        }
        else
        {
            this.Close();
            frm1 f = new frm1();
            f.MdiParent = this;
            f.Show();
        }
4

1 に答える 1

1

Mdi フォームから、すべての子フォームをループし、子フォームを閉じるか最小化します。次に、以下で説明するように、アクティブ フォームを表示します。

foreach(Form frm in this.MdiChildren)
{
    frm.Close();

    // or.. just minimize the child forms
    // frm.WindowState = FormWindowState.Minimized;
}

Form frm1 = new Form();
frm1.MdiParent = this;
frm1.Show();

それが役に立てば幸い。

于 2013-05-13T12:18:13.193 に答える