usar objeto en diferentes formularios

20/02/2006 - 16:02 por José Luis | Informe spam
Buenos días,
Lo primero, decir que soy programador aficionado (me hago programitas
que me facilitan mi trabajo) y que lo que consulto puede que se deba a
problemas "de base".
El tema es que tengo una aplicación con un formulario principal en el
cual creo un objeto de una clase por mi definida. Ese objeto toma datos
del formulario principal y realiza una serie de operaciones obteniendo
unos resultados que son datos miembro de la clase.
El problema es que necesito acceder a los datos de ese objeto desde otro
formulario, y no se como hacerlo.

A ver si alguien puede echarme una mano.

Muchas gracias y un saludo,
José Luis
 

Leer las respuestas

#1 Octavio Hernandez
20/02/2006 - 16:12 | Informe spam
Hola JL,

En principio solo necesitas hacer pública la referencia a ese objeto, y ya
estaría disponible:

// en la clase del Form principal
public MiClase MiObjeto = new MiClase();

Lo otro que te puede estar pasando es que no sabes cómo referirte al
formulario principal en ejecución. El problema es que el formulario
principal es creado en el método Main() (definido en Program.cs si estás
usando VS 2005).

Cambia esa clase para que diga:

public static Form1 FormPrincipal;

public static void Main()
{
FormPrincipal = new Form1();
Application.Run(FormPrincipal);
}

A partir de ahí podrás referirte a tu objeto "global" utilizando:

FormPrincipal.MiObjeto

Salu2,

Octavio


"José Luis" escribió en el mensaje
news:dtclm4$ktq$
Buenos días,
Lo primero, decir que soy programador aficionado (me hago programitas que
me facilitan mi trabajo) y que lo que consulto puede que se deba a
problemas "de base".
El tema es que tengo una aplicación con un formulario principal en el cual
creo un objeto de una clase por mi definida. Ese objeto toma datos del
formulario principal y realiza una serie de operaciones obteniendo unos
resultados que son datos miembro de la clase.
El problema es que necesito acceder a los datos de ese objeto desde otro
formulario, y no se como hacerlo.

A ver si alguien puede echarme una mano.

Muchas gracias y un saludo,
José Luis

Preguntas similares