Estoy trabajando con C# de WindowsForms.
Este es el Formulario 1
Código:
public partial class Form1 : Form
{
// Instanciamos un objeto de FORM2
Form2 formulario = new Form2();
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
//Invocamos al Evento
//PonerTitulo es un método
formulario.MiEvento += new Form2.DelegadoTitulo(PonerTitulo);
}
//Metodo de Form1 que pondrá el titulo al Form
void PonerTitulo(string mensaje, int posY)
{
this.textBox1.Location = new Point(textBox1.Location.X, posY);
this.textBox1.Text = mensaje;
}
private void btnMostrar_Click(object sender, EventArgs e)
{
// Mostrar formulario (objeto de Form2)
formulario.Show();
}
Este es el Formulario 2
Código:
public partial class Form2 : Form
{
// Delegado
public delegate void DelegadoTitulo(string mensaje, int posY);
//Evento
public event DelegadoTitulo MiEvento;
public Form2()
{
InitializeComponent();
}
private void btnEnviar_Click(object sender, EventArgs e)
{
// Al evento Click del Boton invocamos el Evento y pasamos el TEXTO
this.MiEvento(textBox1.Text,(50+10));
}
Lo que hace este codigo. El Formulario 1 levanta al Formulario 2 y este ultimo le pasa datos al Formulario 1.
Lo que yo necesito, es que el Formulario 1 levante al Formulario 2 pero que el Formulario 1 le pase datos al Formulario 2 ya estando abierto. Se entiende ?
No me doy cuenta de como hacerlo. No se si habra otro metedo mejor.
Espero su repuesta. Saludos