La Web del Programador: Comunidad de Programadores
 
    Pregunta:  58456 - CONTROLES PERSONALIZADOS
Autor:  Jose Luis Ortiz
Hola!
Me llamo jose luis y soy nuevo en la rama de la programacion, estoy tratando de agregar controles personalizados a un panel, pero nada mas me muestra uno, ya intente con Location pero nada, con Containers y nada. No se lo que pasa o que es lo que le falta al codigo, alguien me podria ayudar por favor.
Les dejo el codigo para que lo revisen:

private void button2_Click(object sender, EventArgs e)
{
Label cuadrado = new Label();
cuadrado.Text = "0";
cuadrado.Width = 10;
cuadrado.Height = 10;
cuadrado.BackColor = new Color();
int columnas;
int filas;
columnas = filas = 20;
int i, j;

for (i = 0; i < columnas; i++)
{
for ( j = 0; j < filas; j++)
{
panel1.Controls.Add(cuadrado);
}
panel1.Controls.Add(cuadrado);
}
}

  Respuesta:  tania garcia
hola,
Se te muestra uno pq solo estas creando uno, al principio cuando haces Label cuadrado=new Label();

Tienes que crear un cuadrado en cada iteracion del bucle para crear todos los necesarios

  Respuesta:  miguel zarate
pues si que te falta un largo camino por recorrer, suerte.
Te paso la funcion que requieres:
int columnas=5;
int filas=8;

for (int i = 0; i < columnas; i++)
{
for (int j = 0; j < filas; j++)
{
Label cuad = new Label();
cuad.Width = 50;
cuad.BackColor = Color.Green;
cuad.Name = "label" + i.ToString() + j.ToString();
cuad.Text ="("+ i.ToString()+","+ j.ToString()+")";
cuad.Top = j*cuad.Height+5;
cuad.Left = i * cuad.Width+5;
panel1.Controls.Add(cuad);

}

}