none
Fechar um FORM após abrir outro FORM sem sair da aplicação RRS feed

  • Discussão Geral

  • Boa Tarde Galera,

    Tenho um form principal cheio de botões que ao serem clicados mostram outros forms.

    Tenho o seguinte problema: Eu quero sempre que ao clicar em um botão o outro form de outro botão que já estava aberto feche e mostre o novo!

    Teria jeito??

    Agradeço desde já!


    USO VISUAL STUDIO 2012, WINDOWS FORMS C#
    • Editado vimcruz quinta-feira, 19 de setembro de 2013 15:56
    quinta-feira, 19 de setembro de 2013 15:54

Todas as Respostas

  •       var form2 = new Form2();
          form2.Show();
          this.Hide();


    quinta-feira, 19 de setembro de 2013 16:33
  •       var form2 = new Form2();
          form2.Show();
          this.Hide();



    Não funciona. This.Hide() fecha o form principal !
    quinta-feira, 19 de setembro de 2013 17:20
  • Segue um exemplo:

                foreach (dynamic frm in Application.OpenForms)
                {
                    if (frm.Text == "NomeDoFormQVcQuerFechar")
                    {
                        frm.Close();
                    }
                }


    João Antonio Marques

    quinta-feira, 19 de setembro de 2013 17:42
  • A tela que você quer esconder não é a principal ?

    Não entendi muito bem ? this.hide() vai esconder o formulario principal e qualquer 

    outro formulario que você queira fechar (não seja o principal) você pode usar o dispose().

     
    quinta-feira, 19 de setembro de 2013 17:48
  • Descobri a solução galera.

    Segue o código:

    for (int i = Application.OpenForms.Count - 1; i >= 0; i--)
                {
                    if (Application.OpenForms[i].Text != "form1")
                        Application.OpenForms[i].Close();
                }

    Esse código faz com que todos os Forns estejam abertos diferente do Form principal fechem.

    Obrigado.

    segunda-feira, 23 de setembro de 2013 12:34