Создание словаря для связи между кнопками и формами:
Dictionary<Button, Form> _buttonToFormDict = new Dictionary<Button, Form>();
Добавление кнопок и форм в словарь в вашем коде:
_buttonToFormDict.Add(button1, _form1);
_buttonToFormDict.Add(button2, _form2);
_buttonToFormDict.Add(button3, _form3);
...
Добавление события нажатия кнопки, которое проверяет, чтонажата кнопка и находит соответствующую форму:
private void button_Click(object sender, EventArgs e)
{
Button btn = sender as Button;
if (sender is Button && _buttonToFormDict.ContainsKey(btn))
{
Form form = _buttonToFormDict[btn];
if (!form.IsDisposed && form != null)
{
// Show the form if it was not shown
form.Show();
// Bring back the form if it was minimized
if (form.WindowState == FormWindowState.Minimized)
{
form.WindowState = FormWindowState.Normal;
}
// Brig to front
form.BringToFront();
}
}
}
и добавляет событие click к событию click кнопки.