Usuário com melhor resposta
Dados mostrados de forma duplicada no ListView

Pergunta
-
Olá pessoal!
Estou com uma dificuldade.
Ao carregar dados de um banco de dados num listView, ao abrir o formulário ele mostra corretamente, porém, quando clico no botão de efetuar cadastro e executo o código a seguir ele carrega novamente os dados que já estavam no listView (gerando visualização duplicada dos mesmos) + o novo cadastrado.
O código é o seguinte:
public void carregarUsuarios(ListView lv) { try { lv.Items.Clear(); //limpa os itens antes de mostrar os outros abrir(); //abre conexao sql = "SELECT Usuario, Nome FROM Usuarios"; comando = new SqlCommand(sql, Conn); da = new SqlDataAdapter(comando); da.Fill(dt); for (int i = 0; i < dt.Rows.Count; i++) { ListViewItem item = new ListViewItem(dt.Rows[i]["Usuario"].ToString()); item.SubItems.Add(dt.Rows[i]["Nome"].ToString()); lv.Items.Add(item); } } catch (SqlException ex) { MessageBox.Show("Erro: " + ex.Message, "Falha!", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { fechar(); }
Chamei o método no botão de cadastro:
private void btnCadastrar_Click(object sender, EventArgs e) { if (VerificarSenhas() == true) { usuario.Login = txtUsuario.Text; usuario.Senha = txtSenha.Text; usuario.Acesso = txtAcesso.Text; usuario.Nome = txtNome.Text; usuario.Apelido = txtApelido.Text; usuario.Tratamento = txtTratamento.Text; banco.novoUsuario(usuario); } else { MessageBox.Show("Senhas não conferem!", "Erro!", MessageBoxButtons.OK, MessageBoxIcon.Error); } banco.carregarUsuarios(listView1); //para limpar o listView e carregar os usuarios nele }
Alguém me dá uma luz? Grato desde já!
Respostas
-
Encontrei, preciso limpar o dataTable para funcionar, obrigado a todos.
- Marcado como Resposta Diego Devesa segunda-feira, 15 de outubro de 2018 14:05
Todas as Respostas
-
-
Cara, não rolou
- Editado Diego Devesa segunda-feira, 15 de outubro de 2018 02:06
-
Olá Diego,
Tente ainda limpar ela começando nas colunas:
listView1.Columns.Clear();
listView1.Items.Clear();
listView1.Refresh();Espero que te ajudou.
- Editado Timóteo Nkawa segunda-feira, 15 de outubro de 2018 07:02 Correção
-
-
-
-
Encontrei, preciso limpar o dataTable para funcionar, obrigado a todos.
- Marcado como Resposta Diego Devesa segunda-feira, 15 de outubro de 2018 14:05