Duda leer Combo de otro formulario

14/11/2006 - 15:13 por Agustin | Informe spam
Hola como puedo leer los valores de un combo que esta otro formulario, lo he
puesto Modifiers = public y sigo sin verlo

Gracias.
Agustín

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
14/11/2006 - 16:06 | Informe spam
"Agustin" wrote in message
news:eCjYBc$
Hola como puedo leer los valores de un combo que esta otro formulario, lo
he puesto Modifiers = public y sigo sin verlo



Fíjate en que tienes que acceder a él a través de la INSTANCIA y no de la
CLASE del formulario.

Por ejemplo, si el formulario que tiene el combo es de tipo Form1 y lo
abres asi:

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

Entonces para acceder al combo tienes que usar frm.ComboBox1 y no
Form1.ComboBox1.
Respuesta Responder a este mensaje
#2 Agustin
14/11/2006 - 16:22 | Informe spam
Gracias, yo lo hacia por instancia
Solucionado
Agustin

"Alberto Poblacion"
escribió en el mensaje news:Opy6s5$
"Agustin" wrote in message
news:eCjYBc$
Hola como puedo leer los valores de un combo que esta otro formulario, lo
he puesto Modifiers = public y sigo sin verlo



Fíjate en que tienes que acceder a él a través de la INSTANCIA y no de
la CLASE del formulario.

Por ejemplo, si el formulario que tiene el combo es de tipo Form1 y lo
abres asi:

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

Entonces para acceder al combo tienes que usar frm.ComboBox1 y no
Form1.ComboBox1.



Respuesta Responder a este mensaje
#3 Agustin
14/11/2006 - 16:32 | Informe spam
pues no me da error

Error 1 'Program.MgrEmpresas' does not contain a definition for
'frmIniAppMain' D:\PRG\Program\Program\MgrEmpresas.cs 38 35 Program

Son dos formularios distintos ?

Gracias
Agustin


"Agustin" escribió en el mensaje
news:
Gracias, yo lo hacia por instancia
Solucionado
Agustin

"Alberto Poblacion"
escribió en el mensaje news:Opy6s5$
"Agustin" wrote in message
news:eCjYBc$
Hola como puedo leer los valores de un combo que esta otro formulario,
lo he puesto Modifiers = public y sigo sin verlo



Fíjate en que tienes que acceder a él a través de la INSTANCIA y no de
la CLASE del formulario.

Por ejemplo, si el formulario que tiene el combo es de tipo Form1 y lo
abres asi:

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

Entonces para acceder al combo tienes que usar frm.ComboBox1 y no
Form1.ComboBox1.







Respuesta Responder a este mensaje
#4 Alberto Poblacion
14/11/2006 - 17:45 | Informe spam
"Agustin" wrote in message
news:%
pues no me da error

Error 1 'Program.MgrEmpresas' does not contain a definition for
'frmIniAppMain' D:\PRG\Program\Program\MgrEmpresas.cs 38 35 Program



Eso es que estás llamando al frmIniAppMain desde un sitio distinto de
donde lo tienes definido. Por defecto no es una variable global, tienes que
programar tú todo lo necesario para pasarte esa variable desde el sitio
donde la creas al sitio donde la usas.

Son dos formularios distintos ?



Errr... ¿Cómo dos distintos? Se supone que solo has creado uno. No
confundas la clase con la instancia. La clase no "es" un formulario; es una
"plantilla" que sirve para fabricar formularios. Cada vez que haces un "new"
de la clase, se crea un formulario (lo que llamamos la "instancia" de la
clase). La variable a la que asignas el resultado del "new" es la que tienes
que usar para acceder al contenido del formulario. Es lícito hacer varias
veces el "new", en cuyo caso irías teniendo varias copias del formulario,
que en pantalla tendrían el mismo aspecto pero contendrían distintos datos.

Probablemente tu confusión venga de haber usado una versión anterior del
Visual Basic, tal como el VB6. En esa versión, cuando creabas un formulario
tal como Form1, internamente el compilador hacía automáticamente un "Dim
Form1 as New Form1", con lo que siempre tenías una instancia que se llamaba
exactamente igual a la clase, y encima la variable de la instancia la hacía
global, con lo que la veías desde cualquier sitio de tu programa.
Ninguna de las dos cosas es cierta en .Net: ni se crea automáticamente
una instancia que se llame igual que la clase (aunque es lícito que tú la
crees si quieres), ni la variable en la que se crea cada instancia es global
(aunque puedes declararla como pública y estática si quieres).
Respuesta Responder a este mensaje
#5 Agustin
14/11/2006 - 18:04 | Informe spam
en Program.cs hago esto:

InitAppMain frmIniAppMain = new InitAppMain();

frmIniAppMain.ShowDialog();



// Menu Principal

Application.Run(new MainMenu());



***********************************

tengo uno que es InitAppMain.cs del cual llamo a MgrEmpresas.cs
es para poder gestionar las empresas un ABC ?

Gracias

Agustin


"Alberto Poblacion"
escribió en el mensaje news:%
"Agustin" wrote in message
news:%
pues no me da error

Error 1 'Program.MgrEmpresas' does not contain a definition for
'frmIniAppMain' D:\PRG\Program\Program\MgrEmpresas.cs 38 35 Program



Eso es que estás llamando al frmIniAppMain desde un sitio distinto de
donde lo tienes definido. Por defecto no es una variable global, tienes
que programar tú todo lo necesario para pasarte esa variable desde el
sitio donde la creas al sitio donde la usas.

Son dos formularios distintos ?



Errr... ¿Cómo dos distintos? Se supone que solo has creado uno. No
confundas la clase con la instancia. La clase no "es" un formulario; es
una "plantilla" que sirve para fabricar formularios. Cada vez que haces un
"new" de la clase, se crea un formulario (lo que llamamos la "instancia"
de la clase). La variable a la que asignas el resultado del "new" es la
que tienes que usar para acceder al contenido del formulario. Es lícito
hacer varias veces el "new", en cuyo caso irías teniendo varias copias del
formulario, que en pantalla tendrían el mismo aspecto pero contendrían
distintos datos.

Probablemente tu confusión venga de haber usado una versión anterior del
Visual Basic, tal como el VB6. En esa versión, cuando creabas un
formulario tal como Form1, internamente el compilador hacía
automáticamente un "Dim Form1 as New Form1", con lo que siempre tenías una
instancia que se llamaba exactamente igual a la clase, y encima la
variable de la instancia la hacía global, con lo que la veías desde
cualquier sitio de tu programa.
Ninguna de las dos cosas es cierta en .Net: ni se crea automáticamente
una instancia que se llame igual que la clase (aunque es lícito que tú la
crees si quieres), ni la variable en la que se crea cada instancia es
global (aunque puedes declararla como pública y estática si quieres).


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida