Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

daianyyy

[Resolvido] Testar se o form foi fechado

Recommended Posts

Oi pessoal ...alguém sabe como faço para testar no formMain se um form foi fechado ....pensei assim mas tah errado

 

if(frmPacientes.Close())

 

Será que tem como testar isso ????

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou ter que explica melhor p q é mais complicado do que eu pensava ...tenho um datagridview no form main .....dai abro outro form que eu marco as consultas .....quando fecho esse formagendamento eu quero que o datagridview que está no form main seja atualizado .....alguem tem idéia de como eu posso fazer isso ????

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ahh, agora sim :D

Voce precisa usar eventos, voce diz que quando fechar o formulario X eh para executar o metodo Y. Algo assim:

frmPacientes.Closing += new System.EventHandler(this.FormFoiFechado);

private void FormFoiFechado(object sender, System.ComponentModel.CancelEventArgs e)
{

}

Aqui tem um exemplo: http://forums.devshed.com/net-development-...ent-289917.html

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloquei no meu FormAgendamento.Designer.cs

 

this.Closing += new System.Windows.Forms.FormClosedEventHandler(this.FormAgendamento_Closing);//erro aki

 

 

e no meu FormAgendamento.cs

 

private void FormAgendamento_Closing(object sender, EventArgs e)
		{
		   

			CarregaGrid(this.dateTimePicker1);
		}

 

Mas está dando o seguinte erro :

 

Error 2 Cannot implicitly convert type 'System.Windows.Forms.FormClosedEventHandler' to 'System.ComponentModel.CancelEventHandler'

 

 

Alguem sabe o que estou fazendo errado ????

Compartilhar este post


Link para o post
Compartilhar em outros sites

Perguntei sobre isso para um amigo meu e ele disse que tem que usar o padrão de projeto Observer .....e que naum é taum simples de fazer ....alguém ai tem alguma sugestão ou alguma idéia de como resolver meu problema????

Compartilhar este post


Link para o post
Compartilhar em outros sites

No C#/VB.Net o padrão de projeto observer são os próprios eventos, que é o que você está fazendo.

No VS, digita this.Closing += nesse momento o intelissense já vai dar a dica de como escrever o resto.

Mas pelo erro, a forma correta é:

this.Closing += new System.Windows.Forms.CancelEventHandler(this.FormAgendamento_Closing);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui criar o evento

 

mas isso naum resolveu me problema ...tenho um grid no form Main e um FormPacientes com outro grid que adicionar e deleta pacientes ....quando fecho o FormPacientes ....gostaria que o grid do Form Main fosse atualizado .....entaum criei esse evento Closing e chamei o método que Carrega o grid ....mas ele tah chamando direitinho o método ....mas naum sei p q o grid naum atualiza .....já tentei usar UPdate e Refresh do FormMain e do grid ....mas nada aconte .....

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.