Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/08/2010, 02:25
akmadrid
 
Fecha de Ingreso: junio-2010
Mensajes: 44
Antigüedad: 13 años, 11 meses
Puntos: 0
controles dinámicos acceso

Hola,
tengo creada una tabla con una serie de textbox dinamicos que quiero cargar con valores de un array.
En la parte del aspx tengo solamente creada la tabla:
Código ASP:
Ver original
  1. <asp:Table ID="tblmodos" runat="server">
  2.  
  3.    </asp:Table>
En la parte de código en el load de la pagina creo los textbox, de esta forma:

Código ASP:
Ver original
  1. modos = DxGestion.Entidades.Convocatorias.ListarModos().Tables[0];
  2.         //Response.Write("MODOS: " + modos.Rows.Count);
  3.        
  4.         if (modos.Rows.Count > 0)
  5.         {
  6.             foreach (System.Data.DataRow linea in modos.Rows)
  7.             {
  8.                 TableRow fila = new TableRow();
  9.                 TableCell celda1 = new TableCell();
  10.                 TableCell celdaVacia = new TableCell();
  11.  
  12.                 TableCell celda2 = new TableCell();
  13.                 celda2.Height = 19;
  14.                 celda2.Width = 50;
  15.                 TextBox textoObs = new TextBox();
  16.  
  17.                 Label literal = new Label();
  18.                 literal.Text = "Observaciones " + linea["CursoImparModo"].ToString();
  19.                 textoObs.ID = "Observacion_" + linea["IdCursoImparModo"].ToString();
  20.                 textoObs.Text = "";
  21.                 textoObs.TextMode = System.Web.UI.WebControls.TextBoxMode.MultiLine;
  22.                 //texto.Rows = 4;
  23.                 textoObs.Height = System.Web.UI.WebControls.Unit.Pixel(71);
  24.                 textoObs.Width = System.Web.UI.WebControls.Unit.Pixel(388);
  25.                 textoObs.CssClass = "input4";
  26.                 celda1.Controls.Add(literal);
  27.                 celda2.Controls.Add(textoObs);
  28.                 fila.Controls.Add(celda1);
  29.                 fila.Controls.Add(celdaVacia);
  30.                 fila.Controls.Add(celda2);
  31.                 tblmodos.Controls.Add(fila);
  32.  
  33.             }
  34.         }

La parte de insercción, cuando tengo valores en los textbox y quiero grabar me lo hace OK, pero lo que quiero ahora es que me carge los textbox con valores.

La parte de insertar los valores en los textbox es asi y funciona ok, he probado a hacerlo igual para mostrar pero no encuentra los textbox.

Código ASP:
Ver original
  1. public void insertaObsComunicacion(int idConvocatoria, DataTable modos)
  2.     {
  3.         string Idmodo;
  4.         string contenido;
  5.  
  6.         pruebas.Text = "";
  7.  
  8.         foreach (string key in Request.Form)
  9.         {
  10.             string res = Request.Form[key].ToString();
  11.            // pruebas.Text = res+"\n";
  12.             if (key.Contains("Observacion_"))
  13.             {
  14.  
  15.                 int posicion;
  16.                 posicion = key.IndexOf("_");
  17.                 Idmodo = key.Substring(posicion+1);
  18.                 //pruebas.Text += Idmodo + "\n";
  19.                 contenido = res;
  20.                // pruebas.Text += contenido + "\n";
  21.                 ENTIDAD.Convocatorias.insertaObsComunicacion(idConvocatoria, Convert.ToInt32(Idmodo), contenido);
  22.             }
  23.         }
  24.     }

A ver si alguien me puede echar una mano que no entiendo porque al principio si estan los textbox y luego no.
GRACIAS!!!