Usuário com melhor resposta
Não consigo remover linha de um DataGridView através de uma condição

Pergunta
-
Olá pessoal, estou percorrendo um DataGridView, e se uma determinada condição for satisfeita, quero deletar a linha em questão, mas não estou conseguindo deletar a linha desejada ou seja a linha que satisfaz a condição, já tentei de várias formas mas nenhuma está dando certo, o que há de errado na rotina abaixo ?
private void substitui_item()
{
foreach (DataGridViewRow row in dgvVendas.Rows)
{
if (row.Cells[0].Value.ToString() == txtcodmerc.Text)
{
//dgvVendas.Rows.RemoveAt(dgvVendas.CurrentRow.Index);
//dgvVendas.Rows.RemoveAt(dgvVendas.CurrentRow.Index.row);
//dgvVendas.Rows.Remove;
//dgvVendas.Rows.RemoveAt(row.Index);
//dataGridView1.Rows.RemoveAt(item.Index);
}
}
}C#, WindowsForm
Respostas
-
Olá, se não usa DataSource, ao meu ver seu código está certo...
private void substitui_item() { foreach (DataGridViewRow row in dgvVendas.Rows) { if (row.Cells["INDEX_ou_NOME_DO_SEU_CAMPO"].Value.ToString() == txtcodmerc.Text) { dgvVendas.Rows.RemoveAt(row.Index); } } }
tenta o código no if para ignorar letras maiúsculas e acentos...
if (String.Compare(s1, s2, CultureInfo.CurrentCulture, CompareOptions.IgnoreNonSpace | CompareOptions.IgnoreCase) == 0)
Fonte: https://stackoverflow.com/a/7720903
Se ajudou, marque como resposta! Obrigado.
- Marcado como Resposta Porter Porter terça-feira, 2 de abril de 2019 14:35
Todas as Respostas
-
-
Olá Leonardo, obrigado por responder.
Não estou usando tabela, estou informando no Textbox e em seguida gero linhas no DataGridView através do Textbox informado, quero percorrer o DataGridView, se a condição satisfazer, deletar a linha, não estou conseguindo saber qual a linha que estou para deletar a linha.
-
Olá, se não usa DataSource, ao meu ver seu código está certo...
private void substitui_item() { foreach (DataGridViewRow row in dgvVendas.Rows) { if (row.Cells["INDEX_ou_NOME_DO_SEU_CAMPO"].Value.ToString() == txtcodmerc.Text) { dgvVendas.Rows.RemoveAt(row.Index); } } }
tenta o código no if para ignorar letras maiúsculas e acentos...
if (String.Compare(s1, s2, CultureInfo.CurrentCulture, CompareOptions.IgnoreNonSpace | CompareOptions.IgnoreCase) == 0)
Fonte: https://stackoverflow.com/a/7720903
Se ajudou, marque como resposta! Obrigado.
- Marcado como Resposta Porter Porter terça-feira, 2 de abril de 2019 14:35
-
-
-