DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

Dicas .NET - Fazendo laços em WebControls

Veja nessa dica, como percorrer os controles (WebControls) de um WebForm.

Fazendo laços em WebControls

Um recurso de programação muito útil é a realização de laços através dos WebControls para a realização de tarefas repetitivas. Por exemplo, em um formulário de cadastramento, a passagem de cada TextBox para a coleção parameters de um Command poderia ser feita com um laço.

O problema é que os WebControls não podem ser facilmente localizados utilizando Me.Controls. Os WebControls de um WebForm encontram-se normalmente dentro do WebForm, que é por si só um control que encontra-se dentro da coleção Me.Controls

Então para podermos realizar este tipo de algorítimo devemos localizar o formulário e só então fazer laços com os controles contidos dentro do formulário. Podemos criar uma função que possa localizar e devolver o objeto formulário dentro da coleção Me.Controls. Veja como fica:

 

Function acharForm() As Web.UI.HtmlControls.HtmlForm

  Dim obj As Web.UI.Control

  For Each obj In Me.Controls

    If TypeOf obj Is Web.UI.HtmlControls.HtmlForm Then

      Return (obj)

    End If

  Next

End Function

 

Veja um exemplo de uso desta função para preencher o parameters de um command:

 

Private Sub cmdAtualizar_Click(ByVal sender As System.Object,

  ByVal e As System.EventArgs) Handles cmdAtualizar.Click

  Dim obj As Web.UI.Control

  Dim f As Web.UI.HtmlControls.HtmlForm

  f = acharForm()

  For Each obj In f.Controls

    If TypeOf obj Is System.Web.UI.WebControls.TextBox Then

      cmd.Parameters(obj.id)).Value = DirectCast(obj, TextBox).Text

    End If

  Next

  cn.Open()

  cmd.ExecuteNonQuery()

  cn.Close()

End Sub

 

Recursos como esses podem ser produzidos em classes base e as páginas podem herdar destas classes, como comentamos em outras dicas aqui no site

 





    1 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.



Jeff Wendell Costa Macedo
Muito legal!


em 20/6/2006 09:21 - Responder

 



Publicidade
Autor
Tipster .net

Dicas sobre .NET




Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   1
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03