Ir para conteúdo

POWERED BY:

Arquivado

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

milaaulait

Como passar informações para form (filho), usando datagrid em outro fo

Recommended Posts

Olá, pessoal, estou com uma dúvida:

 

Tenho um form principal (Frmprincipal) e nele chamo o form de cadastro de cliente (Frmcadcliente), neste form de cliente tem um botão que abre outro form (que não é filho) onde possui um campo para pesquisa e uma grid, quando é feita a pesquisa, ao clicar na grid, as informações do cliente selecionado deveriam aparecer no form de cadastro, porém não aparece.

Fiz uns testes de descobri que não está aparecendo pq o form de cadastro é um form filho.

 

Eu estou fazendo algo como:

Frmcadcliente.RGMaskedTextBox.Text = ClienteDataGridView.CurrentRow.Cells(2).Value.ToString

 

 

 

Como ficaria o código neste caso???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, pessoal, estou com uma dúvida:

 

Tenho um form principal (Frmprincipal) e nele chamo o form de cadastro de cliente (Frmcadcliente), neste form de cliente tem um botão que abre outro form (que não é filho) onde possui um campo para pesquisa e uma grid, quando é feita a pesquisa, ao clicar na grid, as informações do cliente selecionado deveriam aparecer no form de cadastro, porém não aparece.

Fiz uns testes de descobri que não está aparecendo pq o form de cadastro é um form filho.

 

Eu estou fazendo algo como:

Frmcadcliente.RGMaskedTextBox.Text = ClienteDataGridView.CurrentRow.Cells(2).Value.ToString

 

 

 

Como ficaria o código neste caso???

 

 

Você tem que passar uma referencia para o form que abre, e no cadastro "publicar" uma variavel para este form...

 

Veja, vou colocar em C# mas você vai entender

 

Como exemplo vou mostrar como você vai escrever dentro de um campo de texto no Form3 e vai aparecer no Form2 o que você escrever

 

 

 

 

//========================================

//Form1 = formPrincipal


//Evento do Botão do Form1 que chama o Form2
private void button1_Click(object sender, EventArgs e)
{
    Form2 fm2 = new Form2();
    fm2.Show();
}

//========================================

 

 

 

 

//========================================

//Form2 = cadCliente

//Uma variavel externa
public string setText
{
     get//retorna
     {
         return textBox1.Text;
     }
     set//aponta
     {
         textBox1.Text = value;
     }
}

//Evento do Botão do Form2 que chama o Form3
private void button1_Click(object sender, EventArgs e)
{
    Form3 fm3 = new Form3(this);

    fm3.Show();
}
//========================================

 

 

 

 

 

//========================================

//Form3 = "sua busca"


//Variável interna do form, para que você possa acessar o Form2
private Form2 fm2;

//Inicializador do Form3 (CRIADO PELO VS 2008)
public Form3(Form2 fm)//Veja que aqui você recebe o Form2
{
    fm2 = fm;//Veja que aqui você seta o form para uma variavel privada o Form3
    InitializeComponent();//CRIADO PELO VS2008
}

//Evento TextChanged do textBox do Form3
private void textBox1_TextChanged(object sender, EventArgs e)
{
    fm2.setText = textBox1.Text;//Aqui você acessa a variavel prvada que esta o Form2 e depois acessa a função que deixamos público no Form2, assim quando você escrever qualquer coisa no Form3 vai aparecer no Form2
}
//========================================

 

 

Espero que tenha ajudado.

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.