none
Filtrar linhas de um DataTable. RRS feed

  • Pergunta

  • Olá Pessoal!
    Tenho uma DataGridView com um DataTable... Que adiciona valores.. Até ai tudo bem!
    Nessa tabela há uma coluna "Deletar" boleana..
    Preciso filtrar essas linhas que estejam marcadas nessa tabela e ao clicar o botão apagar... Deletar apenas as linhas marcadas, que na caso, estarão como "True".

    Não estou achando o mótodo apropriado para navegar entre as linhas e pegar as que estão marcadas...

    Alguém sabe?

    terça-feira, 26 de novembro de 2013 13:27

Todas as Respostas

  • Você precisa navegar no DataTable e verificar a coluna Deletar e retirar do datatable seria isso 
    terça-feira, 26 de novembro de 2013 13:43
  • SIM!
    terça-feira, 26 de novembro de 2013 13:46
  • Olá Ingryd,

    Isso serve para você? Com esse exemplo você pega todas as opções que estão com false, ou seja, automaticamente você removeu todos que são para deletar. Não testei, fiz aqui de cabeça.

    Isso é só um exemplo

    var results = dt.AsEnumerable().Where(dr => dr.Field<string>("Deletar").ToLower().Contains("false"));

    Ou então:

    List<DataRow> rowsToDelete = new List<DataRow>();
    foreach( DataRow row in someTable.Rows )
    {
        if( /* your condition here */ )
        {
            rowsToDelete.Add( row );
        }
    }
    
    foreach( DataRow row in rowsToDelete )
    {
        someTable.Rows.Remove( row );
    }

    Abs e boa sorte

    • Sugerido como Resposta Guilherme da Luz terça-feira, 26 de novembro de 2013 14:46
    terça-feira, 26 de novembro de 2013 14:05