Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
338
Assunto : VB.NET
Titulo: Como utilizar control arrays em VB.NET

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon



O VB.NET não permite mais o uso de Control Arrays como o VB permitia, dando o mesmo nome a vários componentes e utilizando a mesma programação de eventos para todos.

Porém a programação de eventos do VB.NET traz um truque que substitui eficientemente os control arrays. Veja como é o evento click de um botão no VB.NET :

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

End Sub

Observe o Handles ao final do sub, o que indica a qual evento ela se liga. Desta forma as subs do VB.NET não se ligam mais a eventos através de seu nome mas sim através do handles. Desta forma também é válido escrever :

Private Sub EventoBotoes(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

End Sub

É ai que entra o truque para substituirmos os control arrays. Não precisamos nos prender a um único evento no handles, podemos ter vários :

Private Sub EventoBotoes(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click,Button2.Click,Button3.Click

End Sub

Desta forma essa sub será acionada sempre que qualquer um dos 3 botões for clicado. Já deve ter observado que não temos Index, mas temos o Sender que é o botão clicado. Assim sendo podemos utilizar qualquer propriedade do Sender para identificar o botão clicado.



Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
data: 1/9/2012 10:11:00 PM
nome: Dennes
email: dennes@bufaloinfo.com.br
comentário:
Oi,

Sender.Id ?

Abs,

Dennes


data: 1/9/2012 7:20:00 AM
nome: Jefferson
email: suporte-jfsolucoes@homail.com
comentário:
Muito boa a dica, porem, você teria algum exemplo de como capturar o nome do componente com sender já que não existe mais o index.



data: 7/16/2007 9:03:00 PM
nome: Agostinho
email: agodeje@gmail.com
comentário:
Como faria no caso de usar 365 componentes (botões ou outro componente)para identificar qual foi clicado?

Private Sub EventoBotoes(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click,Button2.Click,Button3.Click . . . Button365.Click


ficaria um tanto inviavel.
Abraços.


 1  
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br