none
Apagar uma linha na grid identificada pelo nome RRS feed

  • Pergunta

  • Entao o meu problema e o seguinte.

    Tenho uma grid preenchida em tempo de execução e gostaria de apagar algumas linhas com um determinado nome, por exemplo.

    GRID_ACOMPANHAMENTO

    ID   /  NOME  /  ENDERECO

    1  /  MARIA  / RUA A

    2 / JOSE    / RUA B

    A minha grid fica oculta com a opção SelectionMode: FullRowSelect, assim quando tiver o nome "JOSE" ela apagaria.

    Uso para  apagar a linha manualmente:

       //remover linha grid

                dvgAcompanhamento.Rows.RemoveAt(dvgAcompanhamento.CurrentRow.Index);

    Gostaria de alguma formar fazer esse procedimento automatico.

    sábado, 28 de maio de 2016 21:26

Todas as Respostas

  • Olá, Neste Caso você tem que fazer um filtro pesquisando o nome que deseja apagar caso encontre apague o dado encontrado. Este procedimento é útil para muitos dados.

    tem um tutorial explicando aqui:http://www.macoratti.net/11/12/asp_fgv1.htm

    Att. Manoel Neto.

    domingo, 29 de maio de 2016 02:05
  • Eu fiz o seguinte, primeiro fiz uma consulta na grid, identifiquei os registros que desejo apagar, porem so conseguir fazer um item so, teria alguma forma de deletar todos os registros que estiverem na grid simultaneamente.

     string Conexao = ConfigurationManager.ConnectionStrings["OrganizaEscola.Properties.Settings.BancoEscolaConnectionString"].ConnectionString;

                string sql = "Delete from tbFrequencia where id= " + dgvFrequenciaRemove.CurrentRow.Cells[0].Value;
                SqlConnection conexao = new SqlConnection(Conexao);
                SqlCommand comando = new SqlCommand(sql, conexao);
                conexao.Open();
                int i = comando.ExecuteNonQuery();
                if (i > 0)
                {
                    MessageBox.Show(i + "Dados Excluídos Com Sucesso!!", "Sucesso", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    //consultar();
                }

                conexao.Close();
            }

    domingo, 29 de maio de 2016 20:38
  • Amigo , vc consegue pegar os id que vc quer apagar e coloca-los em um list ? 

    Dai vc incluiria este list mais ou menos assim.

     string sql = "Delete from tbFrequencia where id=(" + string.Join("", List.Items.Cast<String>()) + ")");

    Veja se o exemplo te ajuda. 

    Att, wsti.


    domingo, 29 de maio de 2016 21:15
  • Nao deu certo, nao entendir a questao de "colocar em uma List"

    Apresenteu alguns erros

    Error    4    Only assignment, call, increment, decrement, await, and new object expressions can be used as a statement 

    Error    3    Using the generic type 'System.Collections.Generic.List<T>' requires 1 type arguments


    domingo, 29 de maio de 2016 23:15
  • Vamos lá.  Vc disse que conseguiu pegar os ids que vc excluir. vc esta jogando esses dados aonde ? sugeri que vc jogasse esse resultado num list (generico ou não) vamos partir do exemplo que vc vá jogar esse resultado num listbox, ok.

    string sql = "Delete from tbFrequencia where id IN(" + string.Join("", ListBox1.Items.Cast<String>()) + ")");

    O lIstBox vai ter os ids que vc quer excluir, em vez de passar id por id no delete, ele vai passar uma lista exemplo ,( '10','12','32','99').

    Att, wsti.


    segunda-feira, 30 de maio de 2016 01:43
  • Bom dia Amigo, você deseja apagar os dados somente da grid dou apagar da sua tabela e atualizar o grid?

    MCP - MCSD Se a Resposta foi util, por favor marque como Valida assim esta contribuindo para gratificar toda a ajuda de nossos colegas. Paulo Caleffi

    segunda-feira, 30 de maio de 2016 12:57
  • Paulo eu desejo apagar da tabela e depois atualizar a grid.

    segunda-feira, 30 de maio de 2016 14:52
  • Wsti esta dando erro

    int i = comando.ExecuteNonQuery();

    sintaxe incorreta proxima a...

    terça-feira, 31 de maio de 2016 01:30