none
Ir buscar valor de outro Form RRS feed

  • Pergunta

  • Boa Noite,

    Eu gostaria de conseguir escrever no Form2 o nome de uma Label que tenho no Form1, mas não aparece nada quando escrevo.

    Para já consegui ir buscar o nome da DataGridView que está no Form1, mas não consigo obter o nome da Label.

    Tenho o seguinte código:

     public Form2(Form1 p)
            {
                InitializeComponent();
                parent = p;

               }

     private void buttonInserirDespesa_Click(object sender, EventArgs e)
            {

               int n = parent.dgv1.Rows.Add();
               parent.dgv1.Rows[n].Cells[0].Value = textBoxNome.Text;

             }

    Obrigado


    terça-feira, 6 de dezembro de 2016 19:30

Respostas

  • Na minha opinião, o recomendado seria criar um método para acessar o valor de qualquer componente do outro form. Segue exemplo:

    //FORM1
    public string GetLabel1()
    {
        return label1.Text;
    }
    
    //FORM2
    public Form2(Form1 p)
    {
       InitializeComponent();
       parent = p;
    }
    
    private void buttonInserirDespesa_Click(object sender, EventArgs e)
    {
    
       int n = parent.dgv1.Rows.Add();
       parent.dgv1.Rows[n].Cells[0].Value = parent.GetLabel1();
    }

    Valeu!


    Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!

    André Secco
    Microsoft MSP & MSDN Tech Advisor
    Blog: http://andresecco.com.br
    GitHub: http://github.com/andreluizsecco
    Twitter: @andre_secco

    • Marcado como Resposta joao1999joao quarta-feira, 7 de dezembro de 2016 18:54
    quarta-feira, 7 de dezembro de 2016 09:58

Todas as Respostas

  • Olá,

    Não entendi bem o que quer. Deseja inserir uma linha na DataGrid que está no form1 com os dados de uma Textbox que tem no Form2?


    Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!

    André Secco
    Microsoft MSP & MSDN Tech Advisor
    Blog: http://andresecco.com.br
    GitHub: http://github.com/andreluizsecco
    Twitter: @andre_secco

    • Marcado como Resposta joao1999joao terça-feira, 6 de dezembro de 2016 22:24
    • Não Marcado como Resposta joao1999joao terça-feira, 6 de dezembro de 2016 22:24
    terça-feira, 6 de dezembro de 2016 19:41
  • Não, aquilo era só um exemplo de que consigo ir buscar o nome da DataGridView. Mas o nome da Label não consigo ir buscar, ou seja, quando escrevo não aparece nada.

    A minha questão obter no Form2 o valor de uma Label que tenho no Form1.

    terça-feira, 6 de dezembro de 2016 21:52
  • Na minha opinião, o recomendado seria criar um método para acessar o valor de qualquer componente do outro form. Segue exemplo:

    //FORM1
    public string GetLabel1()
    {
        return label1.Text;
    }
    
    //FORM2
    public Form2(Form1 p)
    {
       InitializeComponent();
       parent = p;
    }
    
    private void buttonInserirDespesa_Click(object sender, EventArgs e)
    {
    
       int n = parent.dgv1.Rows.Add();
       parent.dgv1.Rows[n].Cells[0].Value = parent.GetLabel1();
    }

    Valeu!


    Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!

    André Secco
    Microsoft MSP & MSDN Tech Advisor
    Blog: http://andresecco.com.br
    GitHub: http://github.com/andreluizsecco
    Twitter: @andre_secco

    • Marcado como Resposta joao1999joao quarta-feira, 7 de dezembro de 2016 18:54
    quarta-feira, 7 de dezembro de 2016 09:58