LOOP EM TEXTBOX
Pessoal gostaria de saber por exemplo tenho 50 textbox e quero criar um loop onde eu mudo p visivel a qtde de textbox que o usuario escolher, a duvida e a seguinte como faço isso em um alinha de comando onde uso o index do loop p ir nomeando os textboxs a cada loop para nao ter que escrever 50 vezes os textbox
Ex.
for i = 0 to 50
textbox1.visible = true
textbox2.visible = true
textbox3.visible = true
'e assim vai ate o textbox 50
next
eu gostaria de fazer tipo assim:
for i = 0 to 50
textbox(i).visible = true
next
entenderam? eu nao sei a sintaxe p colocar essa variavel [Ô] i [Ô] p ir selecionando os textbox....
Ex.
for i = 0 to 50
textbox1.visible = true
textbox2.visible = true
textbox3.visible = true
'e assim vai ate o textbox 50
next
eu gostaria de fazer tipo assim:
for i = 0 to 50
textbox(i).visible = true
next
entenderam? eu nao sei a sintaxe p colocar essa variavel [Ô] i [Ô] p ir selecionando os textbox....
Amigo, eu não sei se te ajuda.....
mas eu faço algo assim....
A função acima valida campos em textbox e combox
mas eu faço algo assim....
Private Function valida(ByVal objs As Control) As Boolean
valida = True
Dim ctl As Control, nobj As Integer = 0
For Each ctl In objs.Controls
If TypeOf ctl Is TextBox Then
If ctl.Text.Length = 0 Then
ctl.BackColor = Color.Red
nobj += 1
Else
ctl.BackColor = Color.LightGray
End If
ElseIf TypeOf ctl Is ComboBox Then
If ctl.Text.Length = 0 Then
ctl.BackColor = Color.Red
nobj += 1
Else
ctl.BackColor = Color.LightGray
End If
End If
Next
If nobj > 0 Then
valida = False
End If
End Function
A função acima valida campos em textbox e combox
Basicamente seria:
Mas eu acho que dá pra otimizar.
For i = 0 To Me.Controls.Count - 1
If Me.Controls.Item(i).GetType().ToString = [Ô]System.Windows.Forms.TextBox[Ô] Then
Me.Controls(i).Visible = False
End If
Next
Mas eu acho que dá pra otimizar.
Ou, otimizado:
Mas a parte de controlar os [Ô]50[Ô] fica por tua conta.
Dim Resultado As IEnumerable(Of TextBox) = Me.Controls.OfType(Of TextBox)()
Dim objTextbox As TextBox
[ô]
For Each objTextbox In Resultado
objTextbox.Visible = False
Next
Mas a parte de controlar os [Ô]50[Ô] fica por tua conta.
é a solução do ASHKATCHUP apenas para deixar o textbox visÃvel ou não funciona.
No meu caso eu valido o campo, e deixo ele colorido dependendo da validação.
No código tem ainda a validação de combobox
Agora se for soh para dar um loop em todos os textbox do formulário basta fazer assim :
No meu caso eu valido o campo, e deixo ele colorido dependendo da validação.
No código tem ainda a validação de combobox
Agora se for soh para dar um loop em todos os textbox do formulário basta fazer assim :
Dim ctrl As Control
For Each ctrl In Me.Controls
If TypeOf ctrl Is TextBox Then
ctrl.Visible = False
End If
Next
FoxMan:
Eu acho que é melhor utilizar o método [Ô]ofType[Ô], pois assim evita varrer TODOS controles da tela, caso você tenha muitos.
Eu acho que é melhor utilizar o método [Ô]ofType[Ô], pois assim evita varrer TODOS controles da tela, caso você tenha muitos.
Tópico encerrado , respostas não são mais permitidas