É SIMPLES, MAS NÃO CONSEGUI

MARCOS 20/09/2016 11:13:07
#467165
Bom dia,Colegas!
Eu tenho uma situação simples.Tentei várias alternativas mas nenhuma
funcionou:

O problema:

Digamos que eu tenho no meu projeto num dado momento 2 formulários abertos na tela (VB.NET).
Como eu posso a partir do Primeiro Formulário (Form1) fechar o segundo Formulário(Form2)???

Obs: Eu Tentei a partir do primeiro formulário (Form1), fazer : Form2.Close
mas não funcionou
OMAR2011 20/09/2016 11:27:13
#467167
Pensou em abri o formulário2 apenas com show.
MARCOS 20/09/2016 11:34:20
#467169
Pessoal,
O Form2 foi aberto com Show.
O que preciso é que depois que o Form2 foi aberto, eu possa fecha-lo a partir do Form1.
KERPLUNK 20/09/2016 11:38:29
#467170
Resposta escolhida
Muito simples. Existe uma propriedade em [Ô]Application[Ô] que contém todos os forms abertos, basta usá-la:

Application.OpenForms.Item([Ô]NOME_DO_FORM[Ô]).Close()
OMAR2011 20/09/2016 11:58:09
#467172
Não da para entender.O meu teste fecha de forma normal.
Quanto ao do kerplunk fecha os dois.
XLEGENDARY 20/09/2016 16:22:42
#467183
OMAR o que o rapaz da pergunta quer me parece isso
fechar ambos os forms pois ele usa [Ô] A partir de [Ô]

ou seja, a partir de um form como fechar também o outro.

JCM0867 20/09/2016 17:05:32
#467185
O form2 não é principal? Se fechar ele, irá fechar tudo.
Ao invés de fechar, deixe ele invisível.
Form2.visible = False ao invés de Form2.Close
Na hora que fechar o projeto o form invisível tb fecha
Fiz isso numa situação parecida.
Não parece ser a solução ideal, mas funciona




[txt-color=#0000f0]Precisando de um Sistema de Gestão Educacional?[/txt-color]
Desenvolvido em VB.NET + SQL Server + Crystal Reports
Conheça nossa Solução: www.cjsystem.com.br

MARCOS 20/09/2016 17:56:20
#467186
Pessoal,a solução sugerida pelo Kerplunk funcionou muito bem.
Por isto, irei pontuar a resposta do colega.
De qualquer modo, se algum dia vocês precisarem fechar um Form em tempo de execução, que esteja aberto,a partir de outro , já saberão
como fechar. Basta usar a sintaxe:

Application.OpenForms.Item([Ô]NOME_DO_FORM[Ô]).Close()
Tópico encerrado , respostas não são mais permitidas