Test Foro de elhacker.net SMF 2.1

Programación => Programación General => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: sexto en 1 Marzo 2011, 19:08 PM

Título: Varias imágenes y labels en un for
Publicado por: sexto en 1 Marzo 2011, 19:08 PM
A ver si me entendéis que es un poco complicado de explicar.

Tengo un formulario en C# (Windows Forms), en el tengo varios Labels y PictureBox que relleno mediante código (accediendo a una BD MySQL).
Lo que quiero hacer es, en vez de poner en el código:
Código (csharp) [Seleccionar]

Label1.Text = tal;
Label2.Text = tal;
Label3.Text = tal;
etc

hacerlo de tal forma que con un for me los rellene todos, algo parecido a:
Código (csharp) [Seleccionar]

for (int i = 0; i < 3; i++)
{
    label[i].Text = tal;
}

Ya se que no es con esos corchetes, pero es para que se me entienda...

Es posible?

Muchas gracias.
Título: Re: Varias imágenes y labels en un for
Publicado por: [D4N93R] en 1 Marzo 2011, 19:39 PM
Hola,

Una simple búsqueda en google: el primer resultado: http://www.dreamincode.net/code/snippet1238.htm

Recuerda buscar tanto dentro como fuera del foro antes de preguntar.

Un saludo!
Título: Re: Varias imágenes y labels en un for
Publicado por: sexto en 1 Marzo 2011, 20:08 PM
Muchas gracias pero...

No lo entiendo xD
Título: Re: Varias imágenes y labels en un for
Publicado por: seba123neo en 2 Marzo 2011, 01:27 AM
Cita de: sexto en  1 Marzo 2011, 20:08 PM
No lo entiendo xD

miralo bien, lo que hace el codigo es recorrer los controles que hay en el formulario, y setearle algun valor segun sea el tipo del control (textbox, combo..etc.)

vos solo necesitas label, lo que el codigo seria algo asi:

Código (csharp) [Seleccionar]
public static void ClearForm(System.Windows.Forms.Control parent)
{
    foreach (System.Windows.Forms.Control ctrControl in parent.Controls)
    {
         if (object.ReferenceEquals(ctrControl.GetType(), typeof(System.Windows.Forms.Label)))
         {
              ((System.Windows.Forms.TextBox)ctrControl).Text = "aca va el dato";
         }
     }
}


saludos.
Título: Re: Varias imágenes y labels en un for
Publicado por: sexto en 2 Marzo 2011, 10:19 AM
Yo concretamente lo quiero en labels y en imágenes, pero
1º Hay varios labels a parte de los que quiero cambiar.
2º En cada label/imagen quiero un dato distinto, que lo coge de una base de datos.
Título: Re: Varias imágenes y labels en un for
Publicado por: sexto en 2 Marzo 2011, 12:17 PM
Ya lo he conseguido, con un array de PictureBox.

Muchas gracias
Título: Re: Varias imágenes y labels en un for
Publicado por: sexto en 3 Marzo 2011, 09:39 AM
Para el que le interese, he conseguido hacerlo con bastante menos código.
Los PictureBox tienen que llamarse Portada0, Portada1, Portada2, etc

for (int i = 0; i < 6; i++)
            {
                Portada[i] = new System.Windows.Forms.PictureBox();
                imagen = "URL" + list[1][i];
                StreamImagen = getUrl(imagen);
                Control[] miscontrols = panel1.Controls.Find("Portada" + i.ToString(), true);
                if (miscontrols.Length > 0)
                {
                    ((PictureBox)miscontrols[0]).Image = System.Drawing.Image.FromStream(StreamImagen);
                }
            }