Examinar mais detalhadamente: Usando um for each... Next repetir um conjunto de
Nesta lição, você aprenderá a usar um loop For Each...Next para repetir uma coleção.
Em uma lição anterior, você aprendeu a usar um loop For...Next para executar um bloco de código um número de vezes especificado.Os objetos de coleção do Visual Basic oferecem suporte a um tipo especial de loop, o loop For Each...Next, que pode ser usado para executar um bloco de código para cada elemento na coleção em vez de executar o bloco um determinado número de vezes.
Adicionando um loop For Each...Next
Na lição anterior, você adicionou manualmente os valores para a propriedade Position dos objetos Players na coleção de equipe para o controle ComboBox.Enquanto isso funcionou para o exemplo, não é a prática recomendada — sempre que você adicionou um novo jogador, você também precisou atualizar a coleção Items do controle ComboBox.
Uma maneira melhor de tratar isso seria adicionar os valores Position para a coleção Items pelo loop através da coleção team usando um loop For Each...Next.
Em um loop For...Next, primeiro você deve declarar uma variável de contador; com um loop For Each...Next, primeiro você deve declarar um variável de objeto.O código a seguir demonstra um loop For Each...Next.
Dim player As Persons.Players
For Each player In team
ComboBox1.Items.Add(player.Position)
Next
Nesse caso, não importa quantos Players você tem, o método ComboBox1.Items.Add é executado uma vez para cada objeto Players na coleção da equipe e o valor Position é adicionado à lista.
Tente-o!
Para repetir uma coleção
Abra o projeto Persons da lição anterior.Se você não o salvou, volte para Usando coleções para gerenciar vários objetos e conclua os procedimentos.
No Solution Explorer, selecione o nó Form1.vb no projeto PlayerTest e em seguida, no menu View, escolha Designer.
Selecione o controle ComboBox.Em seguida, na janela Properties, selecione a propriedade Items e clique no botão ….
No String Collection Editor, exclua as quatro entradas existentes e em seguida, clique em OK.
Clique duas vezes no formulário para abrir o Editor de Código.
No Editor de Códigos, adicione o seguinte à seção de declarações (abaixo da declaração de team).
Dim player As Persons.Players For Each player In team ComboBox1.Items.Add(player.Position) Next
Pressione F5 para executar a página.Selecione uma posição a partir da lista suspensa.O jogador para essa posição é exibido em uma caixa de mensagem.
Próximas etapas
Nesta lição, você usou um loop For Each...Next em uma coleção.Nas lições seguintes, você criará outro tipo de objeto — um controle de usuário.
Próxima Lesson: Objetos visíveis: Criando seu primeiro controle de usuário
Consulte também
Tarefas
Usando coleções para gerenciar vários objetos
Referência
For each... Avançar instrução (Visual Basic)