SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => ASP .NET => Mensaje iniciado por: cesar0_o en Miércoles 8 de Septiembre de 2010, 00:31

Título: Problema con Controles Dinamicos
Publicado por: cesar0_o en Miércoles 8 de Septiembre de 2010, 00:31
Hola Buen dia ,tengo el siguiente problema , si alguien pudiera ayudarme se lo agradeceria mucho. Estoy trabajando con C#  y Asp.net

He instanciado controles dinamicos que por el momento los genero en un ciclo , el detalle es que los inserto dentro de una talba que tambien es dinamica todos estos dentro de un UpdatePanel bueno, cuando les agrego los eventos y se supone que deberian de ser disparados , los objetos no responden a los eventos :unsure: , mi codigo es el siguiente:
Código: C#
  1.  
  2. public void MetodoCreacion()
  3. {
  4.  
  5. RadioButton RBtn = null;
  6. Table table = new Table();
  7. TableRow row = null;
  8. TableCell cell = null;
  9.  
  10. for (int i = 0; i < 5; i++)
  11. {
  12. row = new TableRow();
  13. cell = new TableCell();
  14. RBtn = new RadioButton();
  15.  
  16. RBtn.ID = "RBGN_" + i.ToString();
  17. RBtn.GroupName = "RBGN1";
  18. RBtn.Text = "Opcion " + i.ToString();
  19. RBtn.CheckedChanged += new EventHandler(RBtn_CheckedChanged);
  20. RBtn.AutoPostBack = true;
  21.  
  22. cell.Controls.Add(RBtn);
  23. row.Controls.Add(cell);
  24. table.Controls.Add(row);
  25.  
  26. }
  27.  
  28. UpdatePanel1_UpdatePanelAnimationExtender.Controls .Add(table);
  29. }
  30.  
  31.  
  32.  
  33. public void RBtn_CheckedChanged (object sender, EventArgs e)
  34. {
  35. Label1.Text = ((RadioButton)sender).ID;
  36. }
  37.  
Título: Re: Problema con Controles Dinamicos
Publicado por: Josselo en Martes 2 de Noviembre de 2010, 22:36
Puede que tu problema se deba al Updatepanel por que no lo pruebas fuera de el, par saber si se trata de eso
Título: Re:Problema con Controles Dinamicos
Publicado por: .net en Miércoles 7 de Septiembre de 2011, 21:22
Lo que pasa es que debes sobrescribir los eventos del controles esto se hace creando de nuevo los controles en el evento override void Onload()  aqui debes mandar de nuevo contruir los controles con sus eventos para que se disparen

Verifica el ciclo de vida de una pagina y veras.....

Espero te ayude...