Ajuda com checkbox

04/12/2009

0

Olá pessoal sou iniciante em c#, ..... se alguem puder ajudar fico agradecido....

Tenho no meu form um datagridview prenchido com os dados de uma tabela firebird nessa tabela tem um campo chamado "status" do tipo char onde marco as opções "A" ou "I"  então coloquei no form dois checkbox e um botão pesquisar quando clicar botão quero que filtre o grid com a opção escolhida no checkbox ou "A" ou "I" ou ambas se estiverem marcadas.  Segue abaixo trecho do código   if (checkBox1.Checked ) { FbConnection connc = new FbConnection(strconn); string strSelect = "SELECT * FROM pessoa WHERE status (@status)"; FbDataAdapter dac = new FbDataAdapter(strSelect, connc); DataSet dsc = new DataSet(); dac.SelectCommand.Parameters.AddWithValue ("status", checkBox1.Checked + "%");
dac.Fill(dsc, "pessoa"); \\ Nesta linha da um erro
dataGridView1.DataSource = dsc.Tables["pessoa"]; }
Ciro Daniel

Ciro Daniel

Responder

Posts

10/12/2009

Netasper

string opcao1 = (checkbox1.cheched ? "A" : ""); string opcao2 = (checkbox2.cheched ? "I" : ""); string strSelect = "SELECT * FROM pessoa "   if (opcao1.length > 0 ||  opcao2.length > 0) {       strSelect += "where ";        if (opcao1.length > 0)         strSelect += " status = '" + opcao1 + "' and ";        if (opcao2.length > 0)         strSelect += " status = '" + opcao2 + "' and ";        strSelect = strSelect.substring(0, strSelect.length - 4);   }   []s
Responder

10/12/2009

Fernando Silva

1º Qual é o erro. 2º Ta falntando um "=" depois do status   abs    
Responder

08/01/2010

Paulo Sena

Tá vamos por partes:

1. Vc quer filtrar o GridView depois de preenchido ou Filtrar a consulta antes de preencher o Grid?

2. Se é pra começar em c# ou vb.net vamos começar certo, utilize paramters para efetuar a consulta como no exemplo que segue:

 private void CarregarUsuario(int usuarioID)
        {
            SqlConnection conn = new SqlConnection("sua string de conexao")

            SqlCommand cmd = null;
            SqlParameter param = null;
            SqlDataAdapter app = null;
            DataSet dtsResultado = null;
            StringBuilder sql = new StringBuilder();

            //Cria a consulta, utilizar o nome das colunas sempre evitar o *
            sql.Append("SELECT ID, NOME, SOBRENOME FROM USUARIO ");
            sql.Append("WHERE ");
            sql.Append("(ID = @ID OR @ID IS NULL) ");

            cmd = new SqlCommand(sql, conn);

            //Adiciona o parâmetro ID
            param = new SqlParameter("@ID", SqlDbType.Int);
           
            //Se existir o ID preenche o parametro se não passa o valor DBNUll
            if (usuarioID > 0)
                param.Value = usuarioID;
            else
                param.Value = DBNull.Value ;
           
            cmd.Parameters.Add(param);

            app = new SqlDataAdapter(cmd);

            //Preenche o DataSet
            app.Fill(dtsResultado, "USUARIOS");
        }


3. Agora se vc já tem algum conhecimento em desenvolvimento de software em outras linguages eu recomendo que já passe para uma faze um pouco mais avançada, utiliza o EnterpriseLibrary, especifamente ApplicationBlocks, ele faz toda a parte de controle de acesso a dados, vc só precisa implementar suas consultas.
Responder

16/02/2010

Eleuterio Gonzalez

VC quer fazer uma consulta e popular ou popular e depois consultar.
acredito que se vc fizer um select e popular resolve seu problema.

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar