PROPRIEDADE INDEX PARA TEXTBOX NO VISUAL STUDIO

EABREU 05/09/2012 16:02:17
#409233
Olá pessoal,

Estou tentando refazer o meu programa VB criado na versão 2005 para o Visual Studio 2010.
Uma das propriedades que utilizei no VB5 foi a propriedade index das textbox.
Com esta propriedade eu consegui, se utilizando de alguns loops, preencher várias textbox com o mesmo nome porém com index diferentes.
Agora como fazer isso no Visual Studio 2010? Eu ainda não encontrei a solução.

Alguém tem alguma sugestão?

Obrigado,

Edson
MARCELO.TREZE 05/09/2012 16:22:51
#409237
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.

o unico problema esta apenas na quantidades de botões no form

Tópico encerrado , respostas não são mais permitidas