1

概要:

他のフォームをロードする MDI 親フォームがあります。2 番目のフォームを読み込んだ後、最初のフォームを前面に表示できなくなりました。

説明:

親フォームには、2 つのメニュー項目を含むメニュー ストリップがあります。ホームと検索。各クリック イベントは、フォームが既に読み込まれていない限り、対応するフォームを読み込みます。

問題:

を。[検索] をクリックします。次に、[ホーム] をクリックします。

b. 検索をもう一度クリックすると、対応するすでに開いているフォームが前面に表示されなくなります。

    private void tsmHome_Click(object sender, EventArgs e)
    {
        // Loop through all open forms...
        foreach (Form form in Application.OpenForms)
        {
            // If frmHome is Opened, set focus to it and exit subroutine.
            if (form.GetType() == typeof(frmSearch))
            {

                form.Activate();
                return;
            }
        }

        // If frmHome is not Opened, create it. 
        frmHome f = new frmHome();
        f.MdiParent = this;
        f.Show();
    }

    private void tsmSearch_Click(object sender, EventArgs e)
    {
        // Loop through all open forms...
        foreach (Form form in Application.OpenForms)
        {
            // If frmSearch is Opened, set focus to it and exit subroutine.
            if (form.GetType() == typeof(frmSearch))
            {

                form.Activate();
                return;
            }
        }

        // If frmSearch is not Opened, create it. 
        frmSearch f = new frmSearch();
        f.MdiParent = this;
        f.Show();
    }
4

3 に答える 3

0

フォームが存在する場合は、コードをこれに変更して前面に表示することができます。

   // Loop through all open forms...
    foreach (Form form in Application.OpenForms)
    {
        // If frmSearch is Opened, set focus to it and exit subroutine.
        if (form.GetType() == typeof(frmSearch))
        {

            form.Activate();
            form.BringToFront();
            //form.WindowState = FormWindowState.Maximized;
            return;
        }
    }

    // If frmSearch is not Opened, create it. 
    frmSearch f = new frmSearch();
    f.MdiParent = this;
    f.Show();
于 2014-12-12T04:07:38.343 に答える
0

いくつかのオプションを試すことができます:

f.TopMost = true;
f.BringToFront();

また、ウィンドウをダイアログ モードで開くこともできます。

f.ShowDialog();

これが役立つことを願っています。よろしくお願いします、

于 2014-12-12T03:54:34.060 に答える