Pasar datos entre Formularios Siempre hay alguien que me pregunta como se hace para pasar datos de un formulario a otro y poder utilizar dichos datos. en honor ha esas personas veremos unas formas de como pasar los datos de un formulario a otro. Para pasar variables o/u objetos de un formulario a otro primero crearemos un proyecto de tipo Windows Forms, al crear el proyecto creara un Forms1 y nosotros tenemos que crear el Form2 para poder pasar de uno a otro. INFORMAR DE ESTE ANUNCIOPRIVACIDAD Hay varias formas de enviar datos de un formulario a otro veamos esta que es muy sencilla, imaginémonos que quiero enviar un dato del form1 al form2. Lo que puedo hacer es asignar o crear una variable publica en el formulario en que quiero utilizar los datos. Y en el Form2 colocare un label y le pondré lbMensaje: Hoy solo hace falta crear una variable publica y utilizarla en el load del formulario: Anuncios INFORMAR DE ESTE ANUNCIOPRIVACIDAD En el otro formulario tendré que utilizar esta variable publica y llenarla con el mensaje que quiero que me ponga en el label llamado lbMensaje. en el Form1 tendré que insertar un botón para enviar y mostrar el mensaje en el formulario 2: En el clic de este botón programaría esto: Si lo corremos nos mostraría esto: Si hacemos clic en el botón le enviaríamos nuestro mensaje al formulario 2 de esta forma: Esta es una forma muy practica de enviar datos de un formulario a otro, pero imaginemos que lo que quiero enviar no es un tipo primitivo sino una instancia o/u objeto de una clase, incluso una lista de la clase. El mecanismo seria el mismo, tendríamos que instanciar la clase en el formulario donde quisiéramos utilizarla; cualquiera de las dos yo lo hare utilizando los dos tipos una lista y un objeto. Primero crearemos una clase llamada Persona que me quedara así. En el formulario 2 crearíamos la lista y el objeto: Anuncios INFORMAR DE ESTE ANUNCIOPRIVACIDAD En el formulario 2 dibujaríamos esto: En load del formulario 2 cargaríamos los text y el grid de esta forma: Solo falta crear la lista y el objeto en el formulario 1, para que sean mostrados en el formulario 2. De esta forma: Anuncios INFORMAR DE ESTE ANUNCIOPRIVACIDAD Si lo corremos podemos mandar los datos de un formulario a otro: Como podemos ver de este modo seriamos capaces de hacerlo de una forma fácil. Otra forma de pasar datos de un formulario a otro seria con el método de la clase. Primero colocaríamos otro botón en el formulario 1 de esta forma: Anuncios INFORMAR DE ESTE ANUNCIOPRIVACIDAD En el formulario 2 tendríamos que hacer esto. Hare las tres cosas al mismo tiempo mandar la variable, el objeto y la lista utilizando el método del formulario 2: Y en el formulario 1 tendríamos que programar esto: Como puedes ver tengo que poner como comentario la programación del primer botón por que con esta forma de enviar los datos me da un inconveniente que luego veremos. Tenemos que cargarle los parámetros al formulario que queremos ver, Si corremos este ejemplo nos tendría que dar el mismo resultado de la primera vez que lo hicimos: Anuncios INFORMAR DE ESTE ANUNCIOPRIVACIDAD La tercera forma de enviar datos de un formulario a otro seria sobrecargando el método, la razón por que tuve que poner como comentario la programación del primer botón es que al realizar este método de enviar datos me obliga a colocar los parámetros si quiero ver el otro formulario. Si quiero corregir esto tendríamos que hacer la sobrecarga del método para que no ocurra este error de esta forma. Primero solo crearemos otro botón en le formulario 1 para poder implementar este método: Anuncios INFORMAR DE ESTE ANUNCIOPRIVACIDAD En el formulario 2 tendríamos que programar esto: De esta forma al sobrecargar el método de la clase del formulario 2 hoy es posible mostrar el formulario sin necesidad de mandar los datos. en el formulario 1 programaríamos esto: Si puede ver no estoy mandando datos al formulario 2, si lo corremos nos daría esto: ¿Pero no me muestra nada, que la idea no es enviar datos de un formulario al otro formulario?. Si en teoría lo que acabamos de hacer es lo siguiente, que la programación del segundo botón se convirtió en nuestro método sobrecargado y no el método del formulario 2, esto servirá si queremos abrir el formulario pero sin mostrar nada ni jalar nada y la sobrecarga me servirá para enviar los datos entre formularios. Y por ultimo otra forma de pasar los datos entre formularios seria creando nuestro propio método, en el formulario 1 colocaríamos otro botón para ejecutar este método. En el formulario 2 crearíamos nuestro método de obtención de los datos, como en la sobrecarga hare un método que me pida los tres parámetros un objeto, una lista y una variable: Bueno nuestro método ahora no tiene que devolver ningún valor así que será de tipo void y el load del formulario 2 nos quedara así: Y en el formulario 1 tendríamos que utilizar nuestro método de la siguiente forma: Anuncios Si lo correos nos daría esto: INFORMAR DE ESTE ANUNCIOPRIVACIDAD Bueno hoy solo queda que escojas cual método te parece mejor y utilízalo recuerda que puede haber mas métodos para hacer esto yo solo te mostré los que mas utilizo. https://codigofuentenet.wordpress.com/2012/07/21/pasar-datos-entre-formularios/