Proble de visualización de controles sobre panel

06/02/2007 - 21:07 por Néstor Sánchez A. | Informe spam
Hola,

he creado dinámicamente un panel sobre un form. El panel tiene un control,
digamos una etiqueta, que es visible.
Entonces, luego de alguna acción (pulsar un botón) la etiqueta debiera
hacerse invisible (label1.Visible=false). Pero no funciona.
Inspeccionando con el depurador, éste muestra Visible=false como debiera
ser, pero visualmente la etiqueta sigue aún sobre el panel.

También, traté mover el control fuera de la ventana (label1.Left += 3000)
pero se mantiene en la misma ubicación.
Creo que las propiedades visuales de controles sobre contenedores distintos
a una form son diferentes e indocumentados.
Cualquier ayuda sería apreciada.

Néstor.

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
06/02/2007 - 20:14 | Informe spam
"Néstor Sánchez A." wrote in message
news:
he creado dinámicamente un panel sobre un form. El panel tiene un control,
digamos una etiqueta, que es visible.
Entonces, luego de alguna acción (pulsar un botón) la etiqueta debiera
hacerse invisible (label1.Visible=false). Pero no funciona.
Inspeccionando con el depurador, éste muestra Visible=false como debiera
ser, pero visualmente la etiqueta sigue aún sobre el panel.



Tiene que funcionar. Cerciórate del que label1 es efectivamente la
etiqueta que has generado dinámicamente sobre el panel, y no un label1
creado en tiempo de diseño sobre el formulario.

Si, por ejemplo, lo has generado asi:

Label lbl = new Label();
lbl.Text = "Prueba";
lbl.Name = "label1";
...
Panel1.Controls.Add(lbl);

Entonces para ocultarla lo que tienes que hacer es lbl.Visible=false, y
no label1.Visible=false.
Respuesta Responder a este mensaje
#2 Néstor Sánchez A.
07/02/2007 - 23:44 | Informe spam
Hola,
creo que el problema estaba relacionado a ...

http://excastle.com/blog/archive/20...8/422.aspx
http://www.codeguru.com/forum/showt...php?t79609
http://www.devnewsgroups.net/group/...10521.aspx

Finalmente funcionó cuando, en mi desesperación, simplemente hice un nuevo
panel base y reescribí su código y el de la ventana.
Quizás fue el diseñador, porque la versión inicial era una conversión de una
ventana (derivada) en un panel (derivado) utilizando copy-paste de
controles.
Gracias por tu interés.

Néstor.

"Alberto Poblacion"
escribió en el mensaje news:%
"Néstor Sánchez A." wrote in message
news:
he creado dinámicamente un panel sobre un form. El panel tiene un
control, digamos una etiqueta, que es visible.
Entonces, luego de alguna acción (pulsar un botón) la etiqueta debiera
hacerse invisible (label1.Visible=false). Pero no funciona.
Inspeccionando con el depurador, éste muestra Visible=false como debiera
ser, pero visualmente la etiqueta sigue aún sobre el panel.



Tiene que funcionar. Cerciórate del que label1 es efectivamente la
etiqueta que has generado dinámicamente sobre el panel, y no un label1
creado en tiempo de diseño sobre el formulario.

Si, por ejemplo, lo has generado asi:

Label lbl = new Label();
lbl.Text = "Prueba";
lbl.Name = "label1";
...
Panel1.Controls.Add(lbl);

Entonces para ocultarla lo que tienes que hacer es lbl.Visible=false, y
no label1.Visible=false.



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida