Neste artigo, explicarei como verificar se um form já foi aberto em Windows Forms (C#).
Crie um projeto do tipo Windows Forms (C#), já virá com o Form1, adicione outroForm e deixe como Form2 mesmo, adicione também um botão no Form1 e dê o nome debtnAbrirForm2.
Para o evento do botão criado, adicione o seguinte código:
private void btnAbrirForm2_Click(object sender, EventArgs e)
{
if (Application.OpenForms.OfType<Form2>().Count() > 0)
{
MessageBox.Show("O Form2 já está aberto!");
}
else
{
Form2 form = new Form2();
form.Show();
}
}
Na propriedade Application.OpenForms, podemos encontrar uma coleção de Forms que estão abertos na aplicação e é através dos métodos OfType e Count que verificamos se existe oForm2 aberto, se estiver aberto, uma mensagem é exibida.
Espero ter ajudado a todos!
Abraços, Thiago Coelho!