CriandoBits
Identifique-se Entrar Esqueceu a senha? Esqueci minha senha

C# - Preencher ComboBox usando uma tabela

Por Benedito Silva Júnior - publicado em 04/07/2016


Preencher componentes ComboBox dinamicamente é uma boa alternativa para aplicações que necessitam acessar informações em banco de dados que precisam ser apresentadas de forma sucinta.

O código abaixo faz o preenchimento automático de ComboBox a partir de um método que usa instruções SQL, usando o SGBD SQL Server.

Veja:

private void preencheCBOrcamento() { //instância da classe onde se encontra o método de conexão ao banco de dados MetodosUteis metodos = new MetodosUteis(); //atribui ao objeto cnx o método de conexão ao banco de dados SqlConnection cnx = new SqlConnection(metodos.conectaBD()); cnx.Open(); try { SqlCommand cmd = new SqlCommand("SELECT codigo_orcamento, descricao FROM tipos_orcamento ORDER BY descricao ASC", cnx); //retorna dados resultantes da consulta SQL SqlDataReader reader = cmd.ExecuteReader(); DataTable table = new DataTable(); //estrutura da tabela do BD ou de outra fonte //carrega dados na tabela de acordo com a instrução SQL passada table.Load(reader); DataRow row = table.NewRow(); //representa uma linha de dados em um DataTable row["descricao"] = ""; //para não gerar valor nulo e evitar erro de execução //insere nova linha na coleção no local especificado table.Rows.InsertAt(row, 0); //atribui o objeto DataTable a instância do SQL Server a ser conectada this.cbTipoOrcamento.DataSource = table; //obtemos o valor do membro (código da descrição) this.cbTipoOrcamento.ValueMember = "codigo_orcamento"; //obtemos a descrição do membro this.cbTipoOrcamento.DisplayMember = "descricao"; reader.Close(); //fecha objeto reader.Dispose(); //liberamos o objeto da memória } catch (Exception ex) { MessageBox.Show("Não foi possível preencher o ComboBox\n\nErro:" + ex, "Erro!", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { cnx.Close(); //fecha conexão cnx.Dispose(); //liberamos o objeto da memória } }


 
Voltar a pagina anteriorVoltarSubir ao topo da páginaTopo