PictureBoxes y Zorder [.NET]
-
22-08-2019 - |
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!
Solución
No está seguro de cuál es el problema real es; el siguiente código añade 5 PictureBox
es 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.