O que é Combobox Control?
O controle combobox ajuda 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 um texto e uma lista suspensa na qual um usuário seleciona um item. Observe que a caixa de combinação mostra um item por vez.
Neste tutorial do Visual Basic, você aprenderá,
- O que é Combobox Control?
- Criando um Combobox
- Adicionando itens ao Combobox
- Selecionando Itens Combobox
- Recuperando Valores Combobox
- Removendo itens do Combobox
- Binding DataSource
- Evento SelectedIndexChanged
Criando um Combobox
Uma ComboBox pode ser criada da seguinte maneira:
Etapa 1) Crie um novo aplicativo.
Etapa 2) Arraste um controle combobox da caixa de ferramentas para o formulário.
Você terá criado um controle combobox.
Adicionando itens ao Combobox
Agora que criamos uma combobox, vamos demonstrar como adicionar itens a ela.
Clique duas vezes no controle combobox que você adicionou. Você será movido da guia de design para a guia com o código.
Para adicionar um item a um controle combobox, usamos a propriedade Items. Vamos demonstrar isso adicionando dois itens à caixa de combinação, Masculino e Feminino:
ComboBox1.Items.Add("Male")ComboBox1.Items.Add("Female")
Também podemos escolher adicionar itens à caixa de combinação em tempo de design na janela Propriedades. Aqui estão as etapas:
Etapa 1) Abra a guia de design e clique no controle combobox.
Etapa 2) Vá para a janela Propriedades e visualize a opção Itens.
Etapa 3) Clique no
… Localizado à direita de (Coleção).Etapa 4) Você verá uma nova janela. É aqui que você deve adicionar itens à caixa de combinação, conforme mostrado abaixo:
Etapa 5) Depois de digitar os itens, clique no botão OK.
Etapa 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 Combobox
Pode ser necessário definir o item padrão que será selecionado quando o formulário for carregado. Você pode fazer isso por meio do método SelectedItem (). Por exemplo, para definir o gênero selecionado padrão para Masculino, você pode usar a seguinte declaração:
ComboBox1.SelectedItem = "Male"
Quando você executa o código, o controle combobox deve ser conforme mostrado abaixo:
Recuperando Valores Combobox
Você pode obter o item selecionado de sua caixa de combinação. Isso pode ser feito usando a propriedade text. Vamos demonstrar isso usando nossa combobox acima com dois itens, Masculino e Feminino. Siga as etapas abaixo:
Etapa 1) Clique duas vezes na caixa de combinação para abrir a guia com o código VB.NET.
Etapa 2) Adicione o seguinte código:
Public Class Form1Private Sub ComboBox1_SelectedIndexChanged(sd As Object, evnt As EventArgs) Handles ComboBox1.SelectedIndexChangedDim var_gender As Stringvar_gender = ComboBox1.TextMessageBox.Show(var_gender)End SubEnd Class
Etapa 3) Clique no botão Iniciar da barra de ferramentas para executar o código. Você deve obter o seguinte formulário:
Etapa 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 da caixa de combinação na guia de design. Este subprocedimento será invocado quando você selecionar um item da combobox. O sd As Object faz referência ao objeto que gerou o evento, enquanto o evento As EventArgs possui os dados do evento s.
- Criando um inteiro de string chamado var_gender.
- Definindo o valor da variável var_gender para o item que está selecionado na combobox.
- Imprimindo o valor da variável var_gender em um MesageBox.
- Fim do subprocedimento ComboBox1_SelectedIndexChanged.
- Fim da classe Form1.
Removendo itens do Combobox
É possível remover um item de sua combobox. Existem duas maneiras de fazer isso. Você pode usar o índice do item ou o nome do item.
Ao usar o índice de 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 da combobox. Observe que os índices da combobox começam no índice 0, o que significa que o comando acima removerá o segundo item da combobox.
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 Female do ComboBox1.
Binding DataSource
Uma ComboBox pode ser preenchida 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á a você uma maneira fácil de preencher o controle da 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 sua combobox. É o evento que você deve usar quando precisar implementar uma ação após uma alteração no item selecionado de uma combobox. Vamos demonstrar isso usando um exemplo:
Etapa 1) Crie um novo aplicativo Window Forms.
Etapa 2) Depois disso, você precisa arrastar e soltar dois controles da caixa de combinação no formulário.
Etapa 3) Clique duas vezes dentro do formulário para abrir a guia do código. Insira o seguinte código:
Public Class Form1Private Sub Form1_Load(sd As Object, evnt As EventArgs) Handles MyBase.LoadComboBox1.Items.Add("Males")ComboBox1.Items.Add("Females")End SubPrivate Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChangedComboBox2.Items.Clear()If ComboBox1.SelectedItem = "Males" ThenComboBox2.Items.Add("Nicholas")ComboBox2.Items.Add("John")ElseIf ComboBox1.SelectedItem = "Females" ThenComboBox2.Items.Add("Alice")ComboBox2.Items.Add("Grace")End IfEnd SubEnd Class
Etapa 4) Clique no botão Iniciar na barra superior para executar o código. Você deve obter a seguinte saída:
Etapa 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 em seu botão suspenso. Veja os itens disponíveis:
Etapa 6) Vá para a primeira caixa de combinação e escolha Fêmea. 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 Homens ao ComboBox1.
- Adicionando o item Mulheres ao ComboBox1.
- Fim do subprocedimento Form1_Load ().
- Início de um subprocedimento denominado ComboBox1_SelectedIndexChanged (). Isso será invocado quando um item for selecionado na primeira combobox. O remetente As Object faz referência ao objeto que gerou o evento enquanto o e As EventArgs possui os dados do evento.
- Deixe o ComboBox2 vazio e elimine todos os itens dele.
- Criando uma condição. Verificar se o item selecionado no ComboBox1 é Masculino.
- Adicione o item Nicholas ao ComboBox2 quando a condição acima for verdadeira, ou seja, o item selecionado no ComboBox1 é Masculino.
- Adicione o item John ao ComboBox2 quando a condição acima for verdadeira, ou seja, o item selecionado no ComboBox1 é Masculino.
- Criando uma condição. Verificar se o item selecionado no ComboBox1 é Feminino.
- Adicione o item Alice ao ComboBox2 quando a condição acima for verdadeira, ou seja, o item selecionado no ComboBox1 é Feminino.
- Adicione o item Grace ao ComboBox2 quando a condição acima for verdadeira, ou seja, o item selecionado no ComboBox1 é Feminino.
- Fim do bloco If.
- Fim do subprocedimento ComboBox1_SelectedIndexChanged ().
- Fim da classe Form1.
Resumo
- Uma ComboBox é criada arrastando-a da caixa de ferramentas e soltando-a no formulário.
- Ele nos fornece uma maneira de apresentar inúmeras opções ao usuário.
- Podemos definir o item padrão a ser selecionado na ComboBox quando o formulário for carregado.
- O evento SelectedIndexChanged nos ajuda a especificar a ação a ser executada quando um determinado item é selecionado na combobox.