Foros del Web » Programación para mayores de 30 ;) » .NET »

Pasar datos entre formularios C#

Estas en el tema de Pasar datos entre formularios C# en el foro de .NET en Foros del Web. Estoy trabajando con C# de WindowsForms. Este es el Formulario 1 Código: public partial class Form1 : Form { // Instanciamos un objeto de FORM2 ...
  #1 (permalink)  
Antiguo 28/06/2013, 09:19
 
Fecha de Ingreso: junio-2013
Mensajes: 3
Antigüedad: 10 años, 10 meses
Puntos: 0
Pasar datos entre formularios C#

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
  #2 (permalink)  
Antiguo 28/06/2013, 10:41
Avatar de alan_69niupi  
Fecha de Ingreso: junio-2011
Mensajes: 200
Antigüedad: 12 años, 10 meses
Puntos: 17
Respuesta: Pasar datos entre formularios C#

No se endiende del todo, si quieres pasar algo del 2 al 1 y pasar del 1 al 2, mejor pon los datos que debes de usar o para doder usar la misma informacion an ambos hazlo con propiedades de clases


Saludos!!!
  #3 (permalink)  
Antiguo 28/06/2013, 10:53
 
Fecha de Ingreso: junio-2013
Mensajes: 3
Antigüedad: 10 años, 10 meses
Puntos: 0
Respuesta: Pasar datos entre formularios C#

Me explico.

Tengo el Formulario Principal que abre/levanta al Formulario 2.

En tienpo de ejecuccion y atravez del Formulario Principal necesito cambiar la ubicacion de un objeto de acuerdo a distintas circustancias que se van dando en el Form Principal.

Es decir, necesito pasarle al Formulario 2 parametros varias veces (cambiar posicion del objeto) despues de que este ya esta abierto. Se entiende ?

Use el ejemplo de un textbox para hacer mas sencillo. Usando el codigo anterior( con delegado) me hace al revez. Pasa parametros del Form 2 al Form 1. No encuentro la forma de revertir eso.

espero tu repuesta. Saludos
  #4 (permalink)  
Antiguo 28/06/2013, 11:08
Avatar de alan_69niupi  
Fecha de Ingreso: junio-2011
Mensajes: 200
Antigüedad: 12 años, 10 meses
Puntos: 17
Respuesta: Pasar datos entre formularios C#

Ya entendi, lo que se me ocurre, es como te dije, al abrir el Form1 esos datos que vas a pasar lo pongas en variables globales dentro de una clase ajena y que dentro del Form2 lo recuperes cuando lo necesites.

Es lo que se me ocurre por ahora, de todas maneras voy a ver si se puede de alguna otra manera para ayudarte
saludos!!!
  #5 (permalink)  
Antiguo 28/06/2013, 11:23
 
Fecha de Ingreso: junio-2013
Mensajes: 3
Antigüedad: 10 años, 10 meses
Puntos: 0
Respuesta: Pasar datos entre formularios C#

Gracias por tu tiempo.

Claro, tambien habia pensado de crear variables globales.

Pero el problema esta en que necesito que el disparador de ese parametro este en el Form 1. Ejemplo; buttom_click()

A lo mejor no me estoy dando cuento pero como logras que el Form 2 se de cuenta que esa variable fue cambiada. No hay disparador/evento. Se entiende ?

Saludos

Etiquetas: formularios, textbox
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:13.