Pregunta

A tamaño de la etiqueta como un rectángulo sin texto pero tiene un borde y es invisible (para un rectángulo visual en la forma alrededor de los controles, pero no para contener los controles) o un panel?

¿Fue útil?

Solución

Lo que se quiere utilizar es un GroupBox. No es que realmente importa, lo más probable, pero una etiqueta debería ser más barato que un panel.

Otros consejos

La respuesta es; no importa que tiene la huella más pequeña, y si lo hace usted tiene un problema de diseño (es decir, tiene manera demasiados controles en el formulario). De todos modos, sólo debe utilizar el control que se ajuste al trabajo, en este caso, un panel o un GroupBox.

Si esto es realmente un problema, entonces la mejor manera de proporcionar una separación visual entre los controles es para manejar evento Paint de cada pestaña, y utilizar e.Graphics.FillRectangle (...) para extraer el separador. Se podría deshacerse de un gran número de controles de esa manera.

Si usted no puede hacer algo tan simple como dibujar un rectángulo debajo de cada control en cada pestaña, puede escribir una rutina de generación de código que se ejecuta una vez en el formulario, y para cada página de pestaña que generar algo como esta (por iteración a través de todos los controles de separación en la página):

List<Rectangle> rects = new List<Rectangle>();
rects.Add(new Rectangle(10, 40, 200, 5)); // position of first separator
rects.Add(new Rectangle(10, 80, 200, 5)); // position of second separator
// etc.

A continuación, copiar y pegar estas rutinas de código generados en su aplicación, y se utilicen para el evento de pintura de cada página, así:

SolidBrush brush = new SolidBrush(Color.PeachPuff);
foreach (Rectangle rect in rects)
{
    e.Graphics.FillRectangle(brush, rect);
}

A continuación, se eliminan todos los separadores de su tarjeta de registro. Lo que se debe terminar con una gran variedad de tipo List<Rectangle> (una lista para cada página) que se instancia y llenar en el evento Load del formulario o su constructor (usando el código generado).

Tengo que reiterar lo que dijo Ed, sin embargo. .net formas pueden tener un mucho de los controles sobre ellos sin ningún problema real, por lo que si se está ejecutando en problemas derivados de tener demasiados controles en el formulario, que estarían mejor rediseño de todo el asunto .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top