Update de dados num form com valores digitados noutro

03/11/2014

0

Olá pessoal.
Tenho uma dúvida em trabalhar com forms.
É o seguinte: tenho um frmPrincipal composto pela informação relativa a um paciente e outras coisas mais, mas onde não se pode alterar a informação apesentada.
Nesse form tem um botão "Alterar" que, ao clicar, abre frmAlterar com toda a informação relativa aos dados do Paciente, tal como no frmPrincipal.
Neste frmAlterar posso alterar qualquer informação que pretenda e gravar essas alterações através do botão "Gravar".

O que pretendo é que, depois do clique no botão "Gravar" no frmAlterar, seja feito update à informação no frmPrincipal.
Guilherme

Guilherme

Responder

Posts

04/11/2014

Joel Rodrigues

Não sei como você está fazendo a ligação com o banco de dados, mas se vocÊ fizero update no segundo form, e ao fechá-lo,fizer um select no form principal, os dados virão atualizados.
Responder

05/11/2014

Guilherme

Eu faço a ligação com Procedures.
Os campos do 1º form não podem ser alterados.
Por isso é que é aberto outro form com os mesmos campos do 1º, para serem alterados.
Esses valores são inseridos num sqlParameterCollection e enviados à BD para executar a procedureUpdate com esses parametros.
É disparada uma MessageBox: "Paciente alterado com sucesso".
O que queria era, que ao clicar OK na MessageBox, o 1º form atualize.

Estava a pensar fazer no 1ºform


...
Form2 form2 = new Form2();
form2.carregaPaciente(paciente);
form2.Show();
...
if(form2.ShowDialog() == DialogResult.OK) {
Paciente pacienteAlterado = new Paciente();
pacienteAlterado = "paciente alterado no 2º form"
this.carregaPaciente(pacienteAlterado);
}


Não sei se me estou a explicar da melhor maneira
Responder

05/11/2014

Joel Rodrigues

Sim, entendi o que você precisa. Como eu disse, você pode fazer a parte de atualização direto no form 2 e no form 1, apenas recarregar os dados do paciente em questão.
Caso sua dificuldade seja como acessar um campo no form 2, você pode declará-lo como público:
public Paciente PacienteAtual
{
   get;
   set;
}

Assim vocÊ poderia fazer:
form2.PacienteAtual = pacienteEmEdicao;
Responder

06/02/2015

Joel Rodrigues

Olá, conseguiu resolver seu problema?
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar