Foros del Web » Programación para mayores de 30 ;) » .NET »

Acceder al texto de un control creado dinamicamente

Estas en el tema de Acceder al texto de un control creado dinamicamente en el foro de .NET en Foros del Web. Buenos días, llevo varías días buscando por foros respuestas a mi problema y no he conseguido todavía solucionarlo. Es el siguiente: Tengo un gridview al ...
  #1 (permalink)  
Antiguo 07/12/2009, 06:50
 
Fecha de Ingreso: diciembre-2009
Mensajes: 6
Antigüedad: 14 años, 4 meses
Puntos: 0
Acceder al texto de un control creado dinamicamente

Buenos días, llevo varías días buscando por foros respuestas a mi problema y no he conseguido todavía solucionarlo. Es el siguiente:

Tengo un gridview al que cuando lo relleno, si me devuelve vacio uno de los campos, le añado de forma dinámica un texbox para que el usuario
pueda escribir dentro:

If CType(Me.GVa.Rows.Item(i).Cells.Item(6).Controls(1 ), Label).Text = "" Then
Dim tbox1 As New TextBox()
tbox1.width = 80
GVa.Rows.Item(i).Cells(6).controls.add(tbox1)
End If


Mi problema es en el RowCommand, cuando quiero recuperar el dato que ha puesto el cliente en alguno de esos campos.
En el gridview tengo puesto un botón aceptar que cuando lo pulsa, recojo el texto correspondiente al texbox de la siguiente forma:

If e.CommandName = "BtPassword" Then
Indice = Convert.ToInt32(e.CommandArgument)
CodA = GVa.Rows.Item(Indice).Cells(6).text
end if

No me da ningún tipo de error, pero no me recoge lo que escribo en el campo de texto.
¿Podrían ayudarme, por favor?

Gracias de antemano.
  #2 (permalink)  
Antiguo 07/12/2009, 19:00
 
Fecha de Ingreso: enero-2006
Mensajes: 293
Antigüedad: 18 años, 3 meses
Puntos: 4
Respuesta: Acceder al texto de un control creado dinamicamente

Mh... hace poco también batalle con eso. No encontré una solución "limpia" pero funcionó.

Recuperé el valor de Request.Forms

No recuerdo exactamente,pero checate el Request.Forms.Keys, te trae una coleccion de strings con nombres de variables POST (creo), el problema que los nombres estan modificados

Por ejemplo si tienes un Textbox que llamaste MiTextbox, en realidad Request.Forms lo detectara como (no exactamente pero algo parecido) "$contetnplaceholder$panel1$mas_texto$MiTextbox"

El nombre depende de la ubicación de tu control dinamico.

El punto esque yo tuve que hacer una pequeña rutina para conseguir ese "nombre largo" de mi control.. y ya despues pude recuperar el valor de la siguiente forma:

Request.Forms[nombre_largo]

espero te sirva
  #3 (permalink)  
Antiguo 09/12/2009, 04:54
 
Fecha de Ingreso: diciembre-2009
Mensajes: 6
Antigüedad: 14 años, 4 meses
Puntos: 0
De acuerdo Respuesta: Acceder al texto de un control creado dinamicamente

Hola Osvier, muchas gracias por responder.
Siguiendo tus consejos he podido recuperar (al fin) los campos rellenados por el cliente.

Muchas gracias de nuevo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:19.