Combo VB.NetBox Controle com EXEMPLO
O que é controle de caixa de combinação?
O controle combobox ajuda você a exibir uma lista suspensa com muitos itens. Veja-o como uma combinação de uma caixa de texto na qual um usuário insere o texto e uma lista suspensa na qual o usuário seleciona um item. Observe que a caixa de combinação mostra um item por vez.
Criando uma caixa de combinação
Uma combinaçãoBox pode ser criado da seguinte forma:
Passo 1) Criar uma nova aplicação.
Passo 2) Arraste um controle de caixa de combinação da caixa de ferramentas para o formulário.
Você terá criado um controle de caixa de combinação.
Adicionando itens ao Combobox
Agora que criamos uma caixa de combinação, vamos demonstrar como adicionar itens a ela.
Double clique no controle combobox que você adicionou. Você será movido da aba design para a aba com código.
Para adicionar um item a um controle combobox, usamos a propriedade Items. Vamos demonstrar isso adicionando dois itens ao combobox, Masculino e Feminino:
ComboBox1.Items.Add("Male") ComboBox1.Items.Add("Female")
Também podemos optar por adicionar itens à caixa de combinação em tempo de design na janela Propriedades. Aqui estão as etapas:
Passo 1) Abra a guia de design e clique no controle de caixa de combinação.
Passo 2) Vá para a janela Propriedades e visualize a opção Itens.
Passo 3) Clique em… localizado à direita de (Coleção).
Passo 4)Você verá uma nova janela. É aqui que você deve adicionar itens ao combobox, conforme mostrado abaixo:
Passo 5) Depois de digitar os itens, clique no botão OK.
Passo 6) Clique no botão Iniciar na barra de ferramentas superior e clique no ícone suspenso na caixa de combinação.
Os itens foram adicionados com sucesso ao controle combobox.
Selecionando itens da caixa de combinação
Talvez seja necessário definir o item padrão que será selecionado quando o formulário for carregado. Você pode conseguir isso através do método SelectedItem(). Por exemplo, para definir o gênero selecionado padrão como Masculino, você pode usar a seguinte instrução:
ComboBox1.SelectedItem = "Male"
Ao executar o código, o controle combobox deve ficar conforme mostrado abaixo:
Recuperando valores de Combobox
Você pode obter o item selecionado em sua caixa de combinação. Isso pode ser feito usando a propriedade text. Vamos demonstrar isso usando nossa caixa de combinação acima com dois itens, isto é, Masculino e Feminino. Siga as etapas abaixo:
Passo 1) Double clique na caixa de combinação para abrir a aba com VB.NET código.
Passo 2) Adicione o seguinte código:
Public Class Form1 Private Sub ComboBox1_SelectedIndexChanged(sd As Object, evnt As EventArgs) Handles ComboBox1.SelectedIndexChanged Dim var_gender As String var_gender = ComboBox1.Text MessageBox.Show(var_gender) End Sub End Class
Passo 3) Clique no botão Iniciar na barra de ferramentas para executar o código. Você deve obter o seguinte formulário:
Passo 4) Clique no botão suspenso e escolha seu gênero. No meu caso. Eu escolho Masculino e obtenho o seguinte:
Aqui está uma captura de tela do código:
Explicação do Código:
- Criando uma classe chamada Form1. A classe estará acessível publicamente, pois seu modificador de acesso foi definido como Público.
- Início de um subprocedimento denominado ComboBox1_SelectedIndexChanged. Isso é gerado automaticamente quando você clica duas vezes no controle combobox na aba design. Esse subprocedimento será invocado quando você selecionar um item da combobox. O sd As Object faz referência ao objeto que levantou o evento enquanto o event As EventArgs tem os dados do evento s.
- Criando um inteiro de string chamado var_gender.
- Definir o valor da variável var_gender para o item que está selecionado no combobox.
- Imprimindo o valor da variável var_gender em uma mensagemBox.
- Fim do ComboBox1_SelectedIndexChanged subprocedimento.
- Fim da classe Form1.
Removendo itens da Combobox
É possível remover um item da sua caixa de combinação. Existem duas maneiras de fazer isso. Você pode usar o índice do item ou o nome do item.
Ao usar o índice do item, você deve usar a propriedade Items.RemoveAt() conforme mostrado abaixo:
ComboBox1.Items.RemoveAt(1)
No exemplo acima, estamos removendo o item localizado no índice 1 do combobox. Observe que os índices da caixa de combinação começam no índice 0, o que significa que o comando acima removerá o segundo item da caixa de combinação.
Para remover o item usando seu nome, você deve usar a propriedade Items.Remove() conforme mostrado abaixo:
ComboBox1.Items.Remove("Female")
O código acima deve remover o item denominado Feminino do ComboBox1.
Fonte de dados vinculativa
Uma combinaçãoBox pode ser preenchido a partir de um conjunto de dados. Considere a consulta SQL fornecida abaixo:
select emp_id, emp_name from employees;
Você pode criar uma fonte de dados em um programa e usar o seguinte código para vinculá-la:
comboBox1.DataSource = ds.Tables(0) comboBox1.ValueMember = "emp_id" comboBox1.DisplayMember = "emp_name"
Isso fornecerá uma maneira fácil de preencher seu controle de caixa de combinação com dados sem precisar digitar cada item individual.
Evento SelectedIndexChanged
Este tipo de evento é invocado quando você altera o item selecionado em seu combobox. É o evento que você deve utilizar quando precisar implementar uma ação mediante uma alteração no item selecionado de um combobox. Vamos demonstrar isso usando um exemplo:
Passo 1) Crie um novo aplicativo Window Forms.
Passo 2) Depois disso você precisa Arraste e solte dois controles de caixa de combinação no formulário.
Passo 3) Double clique dentro do formulário para abrir a aba para código. Insira o seguinte código:
Public Class Form1 Private Sub Form1_Load(sd As Object, evnt As EventArgs) Handles MyBase.Load ComboBox1.Items.Add("Males") ComboBox1.Items.Add("Females") End Sub Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged ComboBox2.Items.Clear() If ComboBox1.SelectedItem = "Males" Then ComboBox2.Items.Add("Nicholas") ComboBox2.Items.Add("John") ElseIf ComboBox1.SelectedItem = "Females" Then ComboBox2.Items.Add("Alice") ComboBox2.Items.Add("Grace") End If End Sub End Class
Passo 4) Clique no botão Iniciar na barra superior para executar o código. Você deve obter a seguinte saída:
Passo 5) Clique no botão suspenso na primeira caixa de combinação e escolha Masculino. Mova o cursor do mouse para a segunda caixa de combinação e clique no botão suspenso. Veja os itens disponíveis:
Passo 6) Vá para a primeira caixa de combinação e escolha Feminino. Vá para a segunda caixa de combinação e veja os itens disponíveis:
Aqui está uma captura de tela do código:
Explicação do Código:
- Criando uma classe chamada Form1.
- Início de um subprocedimento denominado Form1_Load(). Isso será acionado assim que o formulário for carregado. O sd As Object faz referência ao objeto que gerou o evento enquanto o sistema As EventArgs possui os dados do evento.
- Adicionando o item Machos ao ComboBox1.
- Adicionando o item Fêmeas ao ComboBox1.
- Fim do subprocedimento Form1_Load().
- Início de um subprocedimento chamado ComboBox1_SelectedIndexChanged(). Isso será invocado quando um item for selecionado no primeiro combobox. O sender As Object faz referência ao objeto que levantou o evento enquanto o e As EventArgs tem os dados do evento.
- Fazer combinaçãoBox2 vazio, limpe todos os itens dele.
- Criando uma condição. Verificando se o item selecionado está no ComboBox1 é masculino.
- Adicione o item Nicholas ao ComboBox2 quando a condição acima for verdadeira, ou seja, item selecionado no ComboBox1 é masculino.
- Adicione o item John ao ComboBox2 quando a condição acima for verdadeira, ou seja, item selecionado no ComboBox1 é masculino.
- Criando uma condição. Verificando se o item selecionado está no ComboBox1 é feminino.
- Adicione o item Alice ao ComboBox2 quando a condição acima for verdadeira, ou seja, item selecionado no ComboBox1 é feminino.
- Adicione o item Grace ao ComboBox2 quando a condição acima for verdadeira, ou seja, item selecionado no ComboBox1 é feminino.
- Fim do bloco If.
- Fim do ComboBoxSubprocedimento 1_SelectedIndexChanged().
- Fim da aula Form1.
Resumo
- Uma combinaçãoBox é criado arrastando-o da caixa de ferramentas e soltando-o no formulário.
- Ele nos fornece uma forma de apresentar inúmeras opções ao usuário.
- Podemos definir o item padrão a ser selecionado no ComboBox quando o formulário é carregado.
- O evento SelectedIndexChanged nos ajuda a especificar a ação a ser executada quando um item específico é selecionado na caixa de combinação.