• Viernes 29 de Marzo de 2024, 16:56

Autor Tema:  Buena programación en C#  (Leído 2921 veces)

s.valdenegro

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Buena programación en C#
« en: Jueves 4 de Abril de 2013, 14:59 »
0
Hola, amigos de solo código, me gustaría saber cual es la mejor forma de agrupar controles en un windows form, yo los agrupo en paneles para poder ordenar mejor y controlar cual se ve y no, pero el problema que debo posicionarlos a todos en la misma posición, esto trae problemas al momento de editar el form ya que al crear otro panel ya no puedo editar el que se encuentra atrás y después de enviar al fondo para editar el que se encuentre atrás llego después de mover al que se encuentra en el fondo que es el panel principal y no puedo ver nuevamente los que se encuentran en el fondo para editarlos. Todos los paneles se encuentran en la misma localización y tienen el mismo tamaño, por lo que me interesa saber si existe algún atributo o método que me permita controlar la capa en la que está el panel o si me permite separarlos ya que de forma automática todos están contenidos en el panel principal (que no ocupa toda la ventana) y cuando le doy ocultar a este me arruina todo y debo mostrar primero el panel anterior para luego mostrar el otro. Intente separar los paneles en el designer de mi form pero se pierde y simplemente no se vé.
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.

.net

  • Miembro MUY activo
  • ***
  • Mensajes: 181
  • Nacionalidad: mx
    • Ver Perfil
Re:Buena programación en C#
« Respuesta #1 en: Jueves 4 de Abril de 2013, 22:03 »
0
Panel o GroupBox
La lógica lleva a más lógica

Apoyo a un mundo OPEN SOURCE!!!

Eso si es el paraíso

s.valdenegro

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re:Buena programación en C#
« Respuesta #2 en: Viernes 5 de Abril de 2013, 15:07 »
0
Se que sirven para eso, pero no responde a mi respuesta. Agrupe los controles en paneles, pero tengo un problema para mostrarlos por separado ya que un panel está contenido en otro y yo quiero tenerlos por separado, pero cuando lo quito del contenido del otro panel simplemente el panel que quiero apartado no logra hacerse visible ni con métodos.

ProfesorX

  • Moderador
  • ******
  • Mensajes: 796
  • Nacionalidad: mx
    • Ver Perfil
Re:Buena programación en C#
« Respuesta #3 en: Domingo 7 de Abril de 2013, 10:20 »
0
Hola s.valdenegro, la verdad no se para que tanta complicacion, y porque esa insistencia de que todos los paneles queden en el mismo lugar, pero bueno, veamos que se puede hacer.

Para empezar tu mismo estas reconociendo tu error:

Citar
ya que un panel está contenido en otro y yo quiero tenerlos por separado

O sea, quieres tenerlos por separado, pero tu mismo dices que tienes un panel dentro de otro.

Entonces la solucion es tener los paneles por separado y no uno dentro de otro.

Para lograrlo:

1. Primero crea tus paneles en lugares diferentes de tu ventana, que no queden encimados, para garantizar que realmente queden separados, y no uno dentro de otro, no te preocupes de su posicion, que eso se arregla despues, suponiendo que quieres 3 paneles (si necesitas mas espacio, haz mas grande tu fromulario), colocalos asi:



2. Coloca los controles que necesites dentro de cada panel, y colocalos en la posicion relativa respecto al panel en donde necesitas cada control (tip, puedes modificar la propiedad Location de cada control que esta dentro del panel panel, de esa forma el resultado es mas exacto)



3. Por ultimo, ya que cada panel tiene los controles que necesitas, ahora si, mueve cada panel a su posicion definitiva, o modifica la propiedad  Location de los paneles de tal forma que sea la misma para cada panel que quieras , voila, veras que ahora si, todos los paneles quedaron separados, y se podran Mostrar/Ocultar (Propiedad Visible) de manera separada. Si cambiaste el tamaño de tu formulario, cuando termines de acomodar, regresalo a su tamaño original (propiedad Size)



Espero que eso resuelva tu problema

Saludos :)

NOTA:
==================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
==================================================================