Você está aqui: C# ::: Windows Forms ::: ComboBox |
Usando DisplayMember e ValueMember nos itens de um ComboBoxQuantidade de visualizações: 17209 vezes |
|
Muitas vezes queremos exibir strings nos itens de um ComboBox mas desejamos obter valores inteiros ao selecionarmos os itens. Por exemplo, o texto do ítem é "Delphi" mas seu valor é "47". Isso facilita muito a aproximação dos dados do ComboBox com os dados contidos nas tabelas do banco de dados. O primeiro passo é criar a classe contendo os dados que desejamos exibir no ComboBox. Veja: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
// classe que contém os dados a serem exibidos no ComboBox
public class Linguagem{
private string nome;
private int codigo;
public Linguagem(string n, int c){
this.nome = n;
this.codigo = c;
}
public string nomeLinguagem{
get{
return nome;
}
}
public int codigoLinguagem{
get{
return codigo;
}
}
public override string ToString(){
return this.nome + " - " + this.codigo;
}
}
Veja que esta classe contém as variáveis de instância nome e código e as propriedades nomeLinguagem e codigoLinguagem. Observe agora o código contido no evento Click de um botão: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
private void button1_Click(object sender, EventArgs e){
// vamos criar uma ArrayList de objetos da classe
// Linguagem
ArrayList linguagens = new ArrayList();
linguagens.Add(new Linguagem("Java", 23));
linguagens.Add(new Linguagem("PHP", 24));
linguagens.Add(new Linguagem("C#", 25));
linguagens.Add(new Linguagem("Python", 26));
// atribuimos o ArrayList como DataSource do ComboBox
linguagensCombo.DataSource = linguagens;
// o texto do item será o nome da linguagem
linguagensCombo.DisplayMember = "nomeLinguagem";
// o valor do item será o código da linguagem
linguagensCombo.ValueMember = "codigoLinguagem";
}
Note que aqui nós criamos uma ArrayList e inserimos nela quatro objetos da classe Linguagem. Em seguida atribuímos a ArrayList à propriedade DataSource do ComboBox. Em seguida definimos a propriedade nomeLinguagem da classe Linguagem como valor para a propriedade DisplayMember do ComboBox. Isso faz com que o texto do ítem seja o nome da linguagem. Para finalizar nós definimos a propriedade codigoLinguagem da classe Linguagem como valor para a propriedade ValueMember do ComboBox. Isso faz com que o valor do ítem seja o código da linguagem. Para verificar se o código funcionou como esperado, veja o evento Click de outro botão: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
private void button2_Click(object sender, EventArgs e){
// exibimos o valor do item selecionado
MessageBox.Show("Valor do item selecionado: " +
linguagensCombo.SelectedValue);
}
|
|
|
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
|
PHP - PHP para iniciantes - Como obter a diferença em horas entre duas datas (e suas respectivas horas) |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





