for each ( ayuda )

17/06/2006 - 17:19 por Pablo Gustavo Ré | Informe spam
Hola, necesito recorrer todos los textbox de un webform y poner su propiedad
readonly = true el tema es que no se como acceder a los textbox del webform,
alguien me podria escribir ese pequeño codigo para estudiarlo desde ya se
los agradezco mucho

Preguntas similare

Leer las respuestas

#1 Cid
17/06/2006 - 18:35 | Informe spam
dim miControl as control
for each miControl in me.controls
if typeOfControl is textbox then...
next

lo escribi de memoria si tienes problemas dimelo. salu2.

"Pablo Gustavo Ré" escribió en el mensaje
news:
Hola, necesito recorrer todos los textbox de un webform y poner su
propiedad readonly = true el tema es que no se como acceder a los textbox
del webform, alguien me podria escribir ese pequeño codigo para estudiarlo
desde ya se los agradezco mucho


Respuesta Responder a este mensaje
#2 Pablo Gustavo Ré
19/06/2006 - 15:31 | Informe spam
Hola, te agradezco mucho tu tiempo, pero la condición then del if núnca se
ejecuta, es decir como que en la colecciónn control no hubiese ningún
textbox y los hay, estuve leyendo el comando typeof y deberia funcionar no
entiendo que pasa esto es lo que hago.
Dim txt As TextBox

Dim ctl As Control

For Each ctl In Me.Controls

If TypeOf ctl Is TextBox Then

Response.Write("bien-")

End If

Next


"Cid" escribió en el mensaje
news:epQX%
dim miControl as control
for each miControl in me.controls
if typeOfControl is textbox then...
next

lo escribi de memoria si tienes problemas dimelo. salu2.

"Pablo Gustavo Ré" escribió en el mensaje
news:
Hola, necesito recorrer todos los textbox de un webform y poner su
propiedad readonly = true el tema es que no se como acceder a los textbox
del webform, alguien me podria escribir ese pequeño codigo para
estudiarlo desde ya se los agradezco mucho






Respuesta Responder a este mensaje
#3 Alberto Poblacion
19/06/2006 - 16:29 | Informe spam
"Pablo Gustavo Ré" wrote in message
news:%
Hola, te agradezco mucho tu tiempo, pero la condición then del if núnca
se ejecuta, es decir como que en la colecciónn control no hubiese ningún
textbox y los hay, estuve leyendo el comando typeof y deberia funcionar
no



Efectivamente, en la colección Controls del Form no hay ningún TextBox.
Lo que habrá en los Controls del Form probablemente será un Document, y
dentro de la colección de Controls del Document habrá otras cosas, como por
ejemplo un DIV, y dentro de la colección de Controls del DIV estarán los
TextBoxes.

En resumen, necesitarás que la subrutina que recorre la colección sea
recursiva:

Sub BuscarTextBoxes(C as Control)
Dim miControl as control
For Each miControl in C.Controls
If TypeOf miControl is textbox Then
(CType(miControl, TextBox)).ReadOnly = True
Else
BuscarTextBoxes(miControl)
Endif
End Sub

Invocarla con BuscarTextBoxes(Me)
Respuesta Responder a este mensaje
#4 Lluís Franco
19/06/2006 - 16:41 | Informe spam
:-)
Hola,
Los controles no están en el primer nivel de un Webform. En su lugar debes
usar una rutina recursiva que busque dentro de la colección "controls" de
cada control del formulario:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
DisableTextBoxes(Me)
End Sub

Private Sub DisableTextBoxes(ByVal pC As Control)
For Each c As Control In pC.Controls
If TypeOf c Is TextBox Then
CType(c, TextBox).ReadOnly = True
Else
DisableTextBoxes(c)
End If
Next
End Sub

Saludos,

Lluís Franco i Montanyés
[MS-MVP-MCP Visual Basic]
Web: http://www.uyssoft.com
Blog: http://msmvps.com/lfranco
(Guía de netiquette del foro)
http://www.uyssoft.com/MSNews.aspx?sm
FIMARGE, S.A.
Principat d'Andorra

Tel.: +376 805 100
Fax: +376 824 500
Mi Perfil MVP en:
https://mvp.support.microsoft.com/profileaa1615-1a2f-4202-bc3f-aec297d967d2
This posting is provided "AS IS" with no warranties, and confers no rights.
Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
derecho
Respuesta Responder a este mensaje
#5 Pablo Gustavo Ré
19/06/2006 - 19:45 | Informe spam
MIL MILLONES DE GRACIAS MAQUINA, POR FIN ANDUVO ESTO. DESPUES LO VOY A
ESTUDIAR UN POCO A VER SI ME DESASNO, PERO FUNCIONA PERFECTO LA RUTINITA QUE
ME PASASTES. TE LO AGRADEZCO DE CORAZON.

"Alberto Poblacion"
escribió en el mensaje news:
"Pablo Gustavo Ré" wrote in message
news:%
Hola, te agradezco mucho tu tiempo, pero la condición then del if núnca
se ejecuta, es decir como que en la colecciónn control no hubiese ningún
textbox y los hay, estuve leyendo el comando typeof y deberia funcionar
no



Efectivamente, en la colección Controls del Form no hay ningún TextBox.
Lo que habrá en los Controls del Form probablemente será un Document, y
dentro de la colección de Controls del Document habrá otras cosas, como
por ejemplo un DIV, y dentro de la colección de Controls del DIV estarán
los TextBoxes.

En resumen, necesitarás que la subrutina que recorre la colección sea
recursiva:

Sub BuscarTextBoxes(C as Control)
Dim miControl as control
For Each miControl in C.Controls
If TypeOf miControl is textbox Then
(CType(miControl, TextBox)).ReadOnly = True
Else
BuscarTextBoxes(miControl)
Endif
End Sub

Invocarla con BuscarTextBoxes(Me)



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida