Hola que tal... no se si ya resolviste tu problema con los win form pero igual te pongo el siguiente ejemplo que creo te puede ayudar en alguna otra ocasion...
FORMULARIO 1
El primer formulario tiene un TextBox llamado "txtDato" y un boton llamado "btnEnviar". La idea es que cuando presiones el boton, el texto que hayas escrito en el "txtDato" pasara al segundo formulario y lo visualizara dentro de otro textbox. Ok, el código de este primer formulario es el siguiente
---------------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnEnviar_Click(object sender, EventArgs e)
{
//Creamos un objeto de tipo "Forulario 2" y pasamos un valor al contructor
//del formulario 2
Form2 frm = new Form2(txtDato.Text);
//Abrimos (Ejecutamos) el formulario en forma "Modal"
frm.ShowDialog();
//La siguientes instrucciones no se ejecutaran sino hasta despues de que
//se haya cerrado la ventana del forulario 2
//Asignamos a nuestro control el valor de la variable publica de
//del formulario 2 "Valor".
txtDato.Text = frm.Valor;
}
}
}
-------------------------------------------------------------------------------------
FORMULARIO 2
Ahora, en el segundo formulario tambien hay un Textbox llamado "txtValor" y un boton llamado "btnRegresar"... entonces el valor que enviaste desde el formulario 1 sera recibido dentro del contructor del formulario 2 y este será guardado en una variable publica de tipo string para despues ser mostrada. El codigo del forulario 2 es :
-------------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsApplication1
{
public partial class Form2 : Form
{
// Variable publica para guardar el valor que se recibimos del formulario 1
// y para guardar el valor que vamos a devolver al formulario 1
public string Valor;
//Como puedes ver, aqui estoy sobrecargando el contructor del formulario
public Form2(string Dato)
{
//El valor que recibimos del formulario 1 lo guardamos dentro de nuestra
//variable publica
this.Valor = Dato;
InitializeComponent();
}
//Si deseas, este contructor lo puedes quitar o dejarlo
public Form2()
{
InitializeComponent();
}
private void Form2_Load(object sender, EventArgs e)
{
//Una vez que nuestro formulario se haya cargado, ahora si, mostramos el
// valor que guardamos en nuestra variable publica
txtValor.Text = Valor;
}
private void btnRegresar_Click(object sender, EventArgs e)
{
//Ahora, antes de cerrar el forulario 2, asignamos a nuestra variable
//publica el valor que queremos ver dentro del formulario 1
this.Valor = txtValor.Text;
//cerramos el formulario 2
this.Close();
}
}
}
Bueno, espero y aun te sirva este ejemplo y sobre todo que me hayas podido explicar
FORMULARIO 1
El primer formulario tiene un TextBox llamado "txtDato" y un boton llamado "btnEnviar". La idea es que cuando presiones el boton, el texto que hayas escrito en el "txtDato" pasara al segundo formulario y lo visualizara dentro de otro textbox. Ok, el código de este primer formulario es el siguiente
---------------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnEnviar_Click(object sender, EventArgs e)
{
//Creamos un objeto de tipo "Forulario 2" y pasamos un valor al contructor
//del formulario 2
Form2 frm = new Form2(txtDato.Text);
//Abrimos (Ejecutamos) el formulario en forma "Modal"
frm.ShowDialog();
//La siguientes instrucciones no se ejecutaran sino hasta despues de que
//se haya cerrado la ventana del forulario 2
//Asignamos a nuestro control el valor de la variable publica de
//del formulario 2 "Valor".
txtDato.Text = frm.Valor;
}
}
}
-------------------------------------------------------------------------------------
FORMULARIO 2
Ahora, en el segundo formulario tambien hay un Textbox llamado "txtValor" y un boton llamado "btnRegresar"... entonces el valor que enviaste desde el formulario 1 sera recibido dentro del contructor del formulario 2 y este será guardado en una variable publica de tipo string para despues ser mostrada. El codigo del forulario 2 es :
-------------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsApplication1
{
public partial class Form2 : Form
{
// Variable publica para guardar el valor que se recibimos del formulario 1
// y para guardar el valor que vamos a devolver al formulario 1
public string Valor;
//Como puedes ver, aqui estoy sobrecargando el contructor del formulario
public Form2(string Dato)
{
//El valor que recibimos del formulario 1 lo guardamos dentro de nuestra
//variable publica
this.Valor = Dato;
InitializeComponent();
}
//Si deseas, este contructor lo puedes quitar o dejarlo
public Form2()
{
InitializeComponent();
}
private void Form2_Load(object sender, EventArgs e)
{
//Una vez que nuestro formulario se haya cargado, ahora si, mostramos el
// valor que guardamos en nuestra variable publica
txtValor.Text = Valor;
}
private void btnRegresar_Click(object sender, EventArgs e)
{
//Ahora, antes de cerrar el forulario 2, asignamos a nuestra variable
//publica el valor que queremos ver dentro del formulario 1
this.Valor = txtValor.Text;
//cerramos el formulario 2
this.Close();
}
}
}
Bueno, espero y aun te sirva este ejemplo y sobre todo que me hayas podido explicar