visual ventana una traer siempre resto primer poner plano net frente formulario encima componentes basicos .net winforms layout

.net - ventana - Mostrar/Ocultar detalles WinForm



traer formulario al frente c# (4)

Creo que le gustaría agrupar los controles asociados en paneles, alinearlos en la parte superior / inferior de su formulario y luego mostrar / ocultar el panel apropiado cuando el usuario haga clic en "Más detalles >>" / "<< Menos detalles ".

EDITAR: No sé de un control auxiliar para esta funcionalidad específica, aparte de los paneles utilizados para agrupar controles y mostrarlos / ocultarlos todos a la vez.

Estoy creando una aplicación WinForm (.net3.5) donde visualizo algunos detalles del cliente. Mi problema es que tenemos un campo de direcciones que se correlaciona con una dirección. Para ahorrar espacio, me gustaría tener las instrucciones ocultas hasta que el usuario "desee" verlas. Mi método previsto era tener una presentación de "acordeón" para las instrucciones.
Me imagino que también podría hacer esto con un campo oculto y BringToFront () (sería mejor).

¿Alguien puede ofrecer alguna orientación sobre el estilo de acordeón?
¿Ya existe algo?
¿Debo tomar algo especial en cuenta?
En la codificación de mi propio comportamiento; ¿Podría simplemente mover todo hacia abajo y luego hacer una copia de seguridad, etc.?

¡Gracias!


El concepto del que está hablando se llama divulgación progresiva . Microsoft tiene algunos consejos excelentes en la Guía de UX sobre estos tipos de controles.


Si los controles se colocan libremente, entonces sí, tendrías que mover las cosas hacia arriba o hacia abajo. Puede reducir la cantidad de trabajo encapsulando grupos de controles relacionados en paneles: luego solo tiene que mover los paneles. Si los paneles están acoplados (por ejemplo, "arriba") - entonces simplemente oculta / muestra el panel y todo debe colocarse en su lugar automáticamente.


Cuando requiero este tipo de comportamiento, me parece que el TableLayoutPanel es útil. Puede configurar las filas y columnas en el tamaño automático si tiene contenido expandible; de ​​esta forma, cuando oculta el contenido, la fila se contrae.

Si luego tiene otro control (un botón, por ejemplo), puede usarlo para controlar el estado oculto del contenido expandible.

Por ejemplo, crea una tabla de 3 filas y 1 columna. Agregue un botón de tamaño fijo en la parte superior y un elemento de tamaño automático en el medio. Haga la última fila del tamaño del porcentaje (necesita esto para que algo ocupe el espacio restante cuando la fila del medio tenga un tamaño igual a cero). Luego use su botón para cambiar la propiedad visible de lo que tenga en la fila del medio.