Я давно пытаюсь решить эту проблему.У меня есть 2 формы, мои цели:
- Когда пользователь сворачивает форму 2, форма 1 тоже должна минимизировать.
- Когда пользователь максимизирует форму 2, форма 1 тоже должна максимизироваться.
- Когда обе формы закрываются другим окном, и пользователь нажимает на значок form2 на панели задач, form1 также должен выходить вперед.
Первые две вещи, которые я решил с помощью метода a_Resize.Но я не могу сделать третий.Я пытался с активировать событие, но когда я делаю это, form2 остается заблокированным.Вот мой код:
public partial class Form1 : Form
{
Form2 form2;
public Form1()
{
InitializeComponent();
form2 = new Form2();
form2.Show();
form2.Resize += new EventHandler(a_Resize);
}
void a_Resize(object sender, EventArgs e)
{
if (((Form)sender).WindowState == FormWindowState.Minimized)
{
this.WindowState = FormWindowState.Minimized;
}
else
{
this.WindowState = FormWindowState.Normal;
}
}
}
Если я добавлю обработчик к событию активации form2:
form2.Activated += new EventHandler(form2_Activated);
И вызову, например, метод Focus (я пробовал и другие методы),form2 остается заблокированным за form1.
void form2_Activated(object sender, EventArgs e)
{
this.Focus();
}
У кого-то есть идеи, как мне это сделать?