Verificar se um form já esta aberto em C#
Bom dia!
Estou criando uma aplição em C# utilizando o VS 2008.
Criei uma tela de menu que chama um cadastro de cliente. Quando clico no meu cliente gostaria de saber como faço para verificar se o cadastro de cliente esta aberto e se tiver, apenas vizualiso o cadastro novamente e não crio outro.
Estou criando uma aplição em C# utilizando o VS 2008.
Criei uma tela de menu que chama um cadastro de cliente. Quando clico no meu cliente gostaria de saber como faço para verificar se o cadastro de cliente esta aberto e se tiver, apenas vizualiso o cadastro novamente e não crio outro.
Geraldo Junio
Curtidas 0
Melhor post
Marcelo Mendes
12/05/2010
Opa!
Estou te passando um método legal para abrir forms com esse comportamento que você quer.
public static void OpenForm(Type frmType)
{
bool bolCtl = false;
foreach (Form form in Application.OpenForms)
{
if (form.GetType().Equals(frmType))
{
form.Show();
bolCtl = true;
break;
}
}
if (!bolCtl)
{
Form frm = (Form)Activator.CreateInstance(frmType);
frm.Show();
}
}
Ai basta passa o tipo do form que você quer abrir , exemplo:
CUtil.OpenForm(typeof(frmCadAluno));
[]s
Estou te passando um método legal para abrir forms com esse comportamento que você quer.
public static void OpenForm(Type frmType)
{
bool bolCtl = false;
foreach (Form form in Application.OpenForms)
{
if (form.GetType().Equals(frmType))
{
form.Show();
bolCtl = true;
break;
}
}
if (!bolCtl)
{
Form frm = (Form)Activator.CreateInstance(frmType);
frm.Show();
}
}
Ai basta passa o tipo do form que você quer abrir , exemplo:
CUtil.OpenForm(typeof(frmCadAluno));
[]s
GOSTEI 2
Mais Respostas
Geraldo Junio
12/05/2010
Marcelo, muito obrigado pela dica, poré, como faço para mostra o form novamente se ele ja estiver aberto?
GOSTEI 0
Marcelo Mendes
12/05/2010
Cara este código acima já faz isso, se o form já estiver aberto ele apenas da um Show() nele.
Caso contrário ele cria uma nova instancia desse form, e dá um Show() posteriormente.
[]s
Caso contrário ele cria uma nova instancia desse form, e dá um Show() posteriormente.
[]s
GOSTEI 0
Marcelo Mendes
12/05/2010
Complementando, este método já funciona quando você já está utilizando Forms com MdiParent e MdiChildrens.
[]s
[]s
GOSTEI 0