• Domingo 22 de Diciembre de 2024, 09:27

Autor Tema:  Problema con controles dinámicos  (Leído 877 veces)

alquimistax

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Problema con controles dinámicos
« en: Miércoles 9 de Septiembre de 2009, 00:07 »
0
Hola.. soy nuevo en este foro....

os cuento mi duda...

Tengo un combobox con una serie de números de jugadores... del 3 al 32...

si hago click en 4 .. me dibuja 4 textbox.. hasta ahí bien... mi problema es el siguiente... quiero dibujar 8 textbox como máximo de alto...

la idea es que si selecciono 9 me gustaría que pintara los 8 textbox en un lado.. el otro al lado

de tal manera que si elijo 32 .. me salga 8 textbox. a su derecha otros 8 .. a su derecha otros 8 y a su derecha otros 8

el código del evento Selectedindexchanged es:

Código: C#
  1.  //Dibujamos los controles dinámicamente
  2.             int num = 0;
  3.             int TotalJugadores = int.Parse(cmbJugadores.SelectedItem.ToString());
  4.             int AnteriorTop = 0;            
  5.             int columna1 = this.PnlPanel.Width / 8;
  6.             int columna2 = this.PnlPanel.Width / 4;
  7.             int columna3 = this.PnlPanel.Width / 2;
  8.             int columna4= this.PnlPanel.Width/1;
  9.            
  10.             this.PnlPanel.Controls.Clear();
  11.  
  12.             for (int i = 1; i <=TotalJugadores; i++)
  13.             {
  14.                 if (TotalJugadores <= 8)
  15.                 {
  16.                     TextBox Caja1 = new TextBox();
  17.                     Caja1.Text = "Jugador " + i.ToString();                    
  18.                     num++;
  19.                     this.PnlPanel.Controls.Add(Caja1);
  20.                     Caja1.Left = 5;
  21.                     Caja1.Top = AnteriorTop + 8;                    
  22.                     Caja1.Left = columna1 - Caja1.Width / 2;
  23.                     AnteriorTop = Caja1.Bottom;
  24.                    
  25.                 }
  26.  
  27.                  else if (TotalJugadores<=16)
  28.                 {
  29.                
  30.                     label1.Text = "Entre 9 y 16";
  31.                                      
  32.                 }
  33.  
  34.                 else  if (TotalJugadores <=24)
  35.                 {
  36.                     label1.Text = "entre 17 y 24";
  37.                 }
  38.  
  39.                 else
  40.                 {
  41.                     label1.Text = "entre 25 y 32";
  42.                 }
  43.              
  44.             }
  45.  

 Alguien se le ocurre algo=?


gracias