Pregunta

Tengo dificultades con que muestra múltiples (hasta 5) PictureBoxes en la parte superior entre sí, pero capaz de ver todos ellos. Sólo primera y la última se mostrará. Les muestro de abajo hacia arriba, fijar sus posiciones correctamente y utilizar la función BringToFront (). ¿Alguien tiene una solución (si los hay)? Gracias por la ayuda!

¿Fue útil?

Solución

No está seguro de cuál es el problema real es; el siguiente código añade 5 PictureBoxes apilados a un formulario, y las configura para que estén todas visibles.

private void AddStackedPictureBoxes()
{
    for (int i = 0; i < 5; i++)
    {
        PictureBox pb = new PictureBox();

        pb.BackColor = Color.FromArgb(i * 50, i * 50, i * 50);
        pb.BorderStyle = BorderStyle.FixedSingle;

        pb.Location = new Point(i * 10, i * 10);
        pb.Size = new Size((5 - i) * 20, (5 - i) * 20);

        Controls.Add(pb);

        pb.BringToFront();
    }
}

Tal vez que le dará una idea de por qué está teniendo problemas.

Por ejemplo, si se llama a BringToFront() antes de añadir el control al formulario, no tendrá ningún efecto.

Otros consejos

Asegúrese de ajustar el color de fondo a transparente en cada uno de ellos.

y como dijo Daniel, BringToFront () sólo funciona si el control ya está en un formulario.

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