• Viernes 1 de Noviembre de 2024, 03:20

Autor Tema:  Problemas Con Wuc Creados Dinámicamente  (Leído 1344 veces)

see07

  • Miembro activo
  • **
  • Mensajes: 51
    • Ver Perfil
Problemas Con Wuc Creados Dinámicamente
« en: Viernes 4 de Marzo de 2005, 20:45 »
0
Tengo una web form que contiene un place holder llamado Example, cuando sucede el   Page_Load en mi web form, estoy creando dinámicamente un  WUC llamado  WebUserControl3 en mi place holder.
WebUserControl3 tiene varios l text boxes, un botón y una  label, cuando se oprime el botón estoy ejecutando un cierto cálculo cuyo resultado coloco en la label. Pero cuando el usuario oprime el botón se produce el  Page_Load en la web form que contiene mi place holder necesito crear mi  WUC mas los datos que allí estaban contenidos. He tratado con ViewState y variables de session pero aún no logro pasar los datos del WUC a la web form para recrear el  WUC y sus datos. Obviamente el  WUC es creado nuevamente sin datos. Sin embargo si introduzco de nuevo los datos en el WUC y oprimo de nuevo el botón los datos se despliegan bien.
¿Por qué la primera vez no está funcionando y a partir de la segunda vez funciona correctamente?
Mi código es:

private void Page_Load(object sender, System.EventArgs e)
{
   if(!Page.IsPostBack)
   {
   }
   else
   {
      Example.Controls.Clear();
      Control control = this.Page.LoadControl("WebUserControl3.ascx");
      Example.Controls.Add(control);
   }
}

Gracias anticipadamente por la ayuda que me puedan brindar.

A.L.                    


 :whistling:

see07

  • Miembro activo
  • **
  • Mensajes: 51
    • Ver Perfil
Re: Problemas Con Wuc Creados Dinámicamente
« Respuesta #1 en: Lunes 7 de Marzo de 2005, 19:00 »
0
Hola:
Finalmente encontré la solución.
Por alguna razón la página no se crea con la misma Id. de control la primera vez como ocurre en las veces subsecuentes, para corregirlo inserté esta linea:
control.ID="WebUserCotrol3"; así:

Example.Controls.Clear();
Control control = this.Page.LoadControl("WebUserControl3.ascx");
control.ID="WebUserCotrol3";
Example.Controls.Add(control);

Espero esto sirva de ayuda a otras personas.

Saludos. :hola:

A.L.