Jump to content
Sign in to follow this  
tig17

C# Registo em branco numa combo e numa checkedlistbox

Recommended Posts

tig17

Alguém sabe uma maneira de retirar o registo em branco que aparece numa checkedlistbox e numa combobox quando vamos buscar dados a uma tabela em Access?

Ou seja aparece-me todos os registos da tabela e depois ainda me aparece mais um em branco não entendo porquê!

O código está assim:

  string sql;

            try
            {
                OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\wibiza\work\Notas\BaseDadosModelos.mdb;");
                //Passando a instrução no sql
                sql = "SELECT Papel, Descricao FROM TipoPapel";
                OleDbCommand cmd = new OleDbCommand(sql, conn);
                //Abre conexão
                conn.Open();
                //Leio os valores a serem preenchidos na combobox
                OleDbDataReader reader = cmd.ExecuteReader();
                DataTable table = new DataTable();
                table.Load(reader);
                DataRow row = table.NewRow();
                row["Papel"] = "";
                table.Rows.InsertAt(row, 0);
                this.combopapel.DataSource = table;
                this.combopapel.ValueMember = "Papel";
                this.combopapel.DisplayMember = "Descricao";

                //fecho a leitura
                reader.Close();
                reader.Dispose();

                //fecho a conexão 
                conn.Close();
                conn.Dispose();

            }
            catch
            {
                MessageBox.Show("Erro ao ler registos! Pode não ter acesso à localização da Base de Dados!", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

Share this post


Link to post
Share on other sites
tig17

acrescentas um where na query

Vou experimentar, mas eu não tenho nenhum registo em branco na Base de Dados LOL

Vou experimentar, mas eu não tenho nenhum registo em branco na Base de Dados LOL

Não resolve lol

Share this post


Link to post
Share on other sites
herty

entao em vez de fazeres

table.Load(reader);

Fazes um ciclo e vais ler o que vem do reader.

Share this post


Link to post
Share on other sites
filiperainho

Nunca usei a maneira que estas a usar para listar os dados que vem da base de dados.

já procuras-te no google como se pode listar dados para uma ComboBox.


Programador - C# ; C ; PHP ; JavaScript ; CSS ; HTML ; iniciante em Android.

Share this post


Link to post
Share on other sites
tig17

Nunca usei a maneira que estas a usar para listar os dados que vem da base de dados.

já procuras-te no google como se pode listar dados para uma ComboBox.

Sim foi ai que encontrei isto e resultou mas aparece sempre uma linha em branco não entendo porquê. Se eu acrescentar um where para me tirar um dos registos ele tira mas se fizer para retirar a linha em branco não retira (e é normal porque não existe tal linha em branco nos registos).

Que maneira utilizas Filipe? :D

DataRow row = table.NewRow();
                row["Papel"] = "";
                table.Rows.InsertAt(row, 0);

Remove estas linhas.

O Tiago aconselhou-me isto num outro topico e resolveu este meu problema :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.