• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Mr. Henriquez

Actualizar um form através de outro form

7 mensagens neste tópico

Bom dia,

Pretendo fazer o seguinte:

Abrir o form A que contem campos de input e 2 listview (1 de Entidades outra de Pessoas de Contactos de Entidades).

Quando pretendo inserir um contacto de entidade abro o form B...

No form B insiro o contacto e ao fazer submeter, insiro na base de dados o contacto e pretendo actualizar a listview de pessoas de contacto no form B, isto é fazer um requery a listview.

O que estou neste momento a fazer é:

chamo o form B c o seguinte codigo: formB.show()

e qd submeto o registo, chamo um evento e esse evento corre o codigo de actualização da listview sem erros.

Problema: A Listview do form A a nivel grafico não actualiza, como se o form A estivesse bloqueado a nivel grafico.

Ja fiz refresh ao form e a listview e nada, mesmo qd o form B e fechado.

Alguem tem alguma solução que me possa ajudar?

Cumprimentos

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas,

Tens duas soluções (pelo menos):

1) No Form B utilizas o namespace MY para aceder ao Form A (My.Forms.FormB.listView ...) e adicionar o item à lista quando inseres na db;

2) Utilizas o formB.ShowDialog() e quando o Form B é fechado, actualizas a lista com base dos campos do Form B (a informação continua disponível)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas!

Tentei a tua solução, mas o form A continua bloqueado.

Isto é ele não actualiza a listview.

cumps,

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

RESOLVIDO!!!

Duma maneira um pouco repiscada mas pronto!

Então e assim, o form A bloqueia quando o form B é activado, isto é eu posso chamar eventos, fazer refresh directo ao form que ele pura e simplesmente não se vai mexer.

O que fiz foi no evento Activated do form, fica a actualizar a listview, isto é, quando fecho o form B o evento Activated do form A irá despoletar e fará então a actualização da listview.

Obrigado!

Cumprimentos,

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

RESOLVIDO!!!

Duma maneira um pouco repiscada mas pronto!

Então e assim, o form A bloqueia quando o form B é activado, isto é eu posso chamar eventos, fazer refresh directo ao form que ele pura e simplesmente não se vai mexer.

O que fiz foi no evento Activated do form, fica a actualizar a listview, isto é, quando fecho o form B o evento Activated do form A irá despoletar e fará então a actualização da listview.

Obrigado!

Cumprimentos,

Não me agrada.  ;)

Mostra lá um pouco de código.

Assim sempre que activares o código vai actualizar-te a lista ... parece-me um mau método.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Utilizando o Application.DoEvents() não resolveria esta questão?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora