Enviar dados de um form para outro
Pessoal estou precisando de uma forcinha. Tenho que enviar dados de um form para outro sem usar o Form.Show(), pois preciso que os dois forms estejam abertos.
Alguem tem alguma ideia?
Estou usando esse exemplo, mas só funciona com o Form.Show().
Código no form onde estão os dados a enviar
Codigo no form que vai receber os dados
Alguem tem alguma ideia?
Estou usando esse exemplo, mas só funciona com o Form.Show().
Código no form onde estão os dados a enviar
public string _textBox1 { get { return textBox1.Text; } } private void button1_Click(object sender, EventArgs e) { frmVendas frm = new frmVendas(); frm._textBox = _textBox1; frm.Show(); //Se eu usar este codigo aqui, funciona this.Close(); }
Codigo no form que vai receber os dados
public string _textBox { set { lbDescricao.Text = value; } }
Carlos Escudeiro
Curtidas 1
Respostas
Fernando Mauricio
03/12/2012
olá
Para enviar dados de um objecto de um form para o outro vc primeiro deve definir o objecto como publico
Depois tens de instanciar o formulário.
digamos se estanciaste o formulário com o nome "formeEs" o código fica assim fica assim:
formEs."o nome do objeto(por exemplo TextBox1)"."a propriedade(por exemplo ."text")"="o valor que ele recebe a partir do formulario aberto"
.
OBS:Não percebi qual a linguagem estas a utilizar por isso não meti o código ja feito mas podes dizer qual a linguagem se não conseguires
Para enviar dados de um objecto de um form para o outro vc primeiro deve definir o objecto como publico
Depois tens de instanciar o formulário.
digamos se estanciaste o formulário com o nome "formeEs" o código fica assim fica assim:
formEs."o nome do objeto(por exemplo TextBox1)"."a propriedade(por exemplo ."text")"="o valor que ele recebe a partir do formulario aberto"
.
OBS:Não percebi qual a linguagem estas a utilizar por isso não meti o código ja feito mas podes dizer qual a linguagem se não conseguires
GOSTEI 0
Carlos Escudeiro
03/12/2012
A linguagem é C#, se puder postar um codigo de exemplo ficarei grato
GOSTEI 0
Fernando Mauricio
03/12/2012
Olha fiz um programa com duas form, na form1 inceri uma textBox e dois butões e na form2 inceri uma listBox
o primeiro botão é para enviar o texto que esta na TextBox para a listBox do form2 não importando se ele ja foi chamado ou não. isto é antes de chamar o form2 vc pode incerir la os dados e mesmo depois de chamado podes continuar apartir da form2 enviar os dados que sera automaticamente atualizado. Ai vai o codigo:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
Form2 f2 = new Form2(); //intanciar o form2
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
f2.listBox1.Items.Add(textBox1.Text);// aqui ele diz que o f2 (que é a intancia do form2).listBox(que é a lixtBox que esta no form2). A propriedade da lixtBox que neste caso é o items por quanto queremos mecher nos intes desta lite. add que é a propriedade para adicionar valor(textBox1.text isto é o texto da textBox)
}
private void button2_Click(object sender, EventArgs e)
{
f2.Show();// chama o form2
}
}
}
Se a duvida continuar esse é o meu endereço para melhor espricação: nadi-mauricio@hotmail.com
o primeiro botão é para enviar o texto que esta na TextBox para a listBox do form2 não importando se ele ja foi chamado ou não. isto é antes de chamar o form2 vc pode incerir la os dados e mesmo depois de chamado podes continuar apartir da form2 enviar os dados que sera automaticamente atualizado. Ai vai o codigo:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
Form2 f2 = new Form2(); //intanciar o form2
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
f2.listBox1.Items.Add(textBox1.Text);// aqui ele diz que o f2 (que é a intancia do form2).listBox(que é a lixtBox que esta no form2). A propriedade da lixtBox que neste caso é o items por quanto queremos mecher nos intes desta lite. add que é a propriedade para adicionar valor(textBox1.text isto é o texto da textBox)
}
private void button2_Click(object sender, EventArgs e)
{
f2.Show();// chama o form2
}
}
}
Se a duvida continuar esse é o meu endereço para melhor espricação: nadi-mauricio@hotmail.com
GOSTEI 0
Fernando Mauricio
03/12/2012
Olha, me esquece de algo
Tens de ir na propriedade: "modifier" da listBox e definir ela como publica, isto para permitir que ela seja modificada apartir de outros formularios. A mesma logica podes usar com label, textBox,buton etc. Isto dependendo da sua necessidade,
Existem muitos metodos para vc fazer o que pretendes (polimorfismo em programação) mas achei esse o mais simpres.
Tens de ir na propriedade: "modifier" da listBox e definir ela como publica, isto para permitir que ela seja modificada apartir de outros formularios. A mesma logica podes usar com label, textBox,buton etc. Isto dependendo da sua necessidade,
Existem muitos metodos para vc fazer o que pretendes (polimorfismo em programação) mas achei esse o mais simpres.
GOSTEI 0
Carlos Escudeiro
03/12/2012
fernando Mauricio, muito obrigado pela ajuda.
GOSTEI 0
Ruan
03/12/2012
fernando Mauricio, muito obrigado pela ajuda.
Conseguiu resolver esse problemas de comunicação entre os dois forms estando os dois abertos ?
GOSTEI 0