clases y winform

02/07/2007 - 10:32 por Aitziber | Informe spam
Hola.
Estoy haciendo un programa con Winform. La cosa es que quiero hacer clases
porque sino el programa me queda muy largo.
He hecho varias clases pero tengo algunos problemas.
Si yo quiero que en una clase me coja los valores de un textbox de un
formulario,¿lo puedo hacer?

No se si me he explicado bien
 

Leer las respuestas

#1 Alberto Poblacion
02/07/2007 - 11:50 | Informe spam
"Aitziber" wrote in message
news:O%
Estoy haciendo un programa con Winform. La cosa es que quiero hacer clases
porque sino el programa me queda muy largo.
He hecho varias clases pero tengo algunos problemas.
Si yo quiero que en una clase me coja los valores de un textbox de un
formulario,¿lo puedo hacer?



Si quieres tomar los valores de un textbox de un formulario desde una
clase distinta de la del formulario, lo que necesitas en primer lugar es que
dicha clase disponga de una referencia al formulario. No basta con el nombre
de la clase del formulario, puesto que podría haber varias copias del mismo
cargadas en memoria (aunque en tu caso sepas que tu programa solo crea una).
Lo que se necesita es la instancia concreta del formulario. Una forma de
pasársela a la clase, es utilizando el constructor en el momento de crearla.

Por ejemplo, supongamos que el formulario lo creas así:

Form1 frm = new Form1();
frm.Show();

Bien, pues esa variable "frm" es la que tienes que hacerle llegar a tu
clase. Podrías hacerlo asi:

MiClase cls = new MiClase(frm);

Y dentro de MiClase tendrías que guardar el valor:

class MiClase
{
private Form1 formularioLlamante;

public MiClase(Form1 frm)
{
formularioLlamante = frm;
}

public CambiarTextoEnElForm(string s)
{
formularioLlamante.TextBox1.Text = s;
}
}

Preguntas similares