Обзор:
У меня есть родительская форма MDI, в которую я загружаю другие формы. После загрузки второй формы я больше не могу вывести первую на передний план.
Описание:
В родительской форме у меня есть полоса меню, содержащая 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();
}