Erro na hora de povoar Listview!!!!
Estou achando que o problema é no meu "While" mais já tentei com o for contando as Linhas e nada. Sempre que eu tenho apenas 1 uma linha na tabela beleza ele não mostrar nenhum erro, mais quando eu adiciono outra linda na tabela ai aparece o erro : ( Cannot add or insert the item '22' in more than one place. You must first remove it from its current location or clone it.
Parameter name: item).
//Listar dados em um GridView
public List<Clientes> Consultar()
{
List<Clientes> lstClientes = new List<Clientes>();
using (MySqlConnection objConexao = new MySqlConnection (strConexao))
{
using (MySqlCommand objCommand = new MySqlCommand(strSelect, objConexao))
{
objConexao.Open();
MySqlDataReader objDataReader = objCommand.ExecuteReader();
if (objDataReader.HasRows)
{
while (objDataReader.Read())
{
Clientes objCliente = new Clientes();
objCliente.IdCliente = Convert.ToInt32(objDataReader["IdCliente"].ToString());
objCliente.Nome = objDataReader["Nome"].ToString();
objCliente.Endereco = objDataReader["Endereco"].ToString();
objCliente.Telefone = objDataReader["Telefone"].ToString();
objCliente.Sexo = objDataReader["Sexo"].ToString();
if (objDataReader["Ativo"].ToString().Equals("0"))
objCliente.Ativo = false;
else
objCliente.Ativo = true;
objCliente.DataCadastro = Convert.ToDateTime(objDataReader["DataCadastro"].ToString());
lstClientes.Add(objCliente);
}
objDataReader.Close();
}
objConexao.Close();
}
}
return lstClientes;
}
Raniel Gomes
Curtidas 0
Respostas
Joel Rodrigues
05/07/2013
Mostre a parte do código conde você insere no ListView.
GOSTEI 0
Raniel Gomes
05/07/2013
Mostre a parte do código conde você insere no ListView.
Aqui segue amigo o código de inserção:
private void CarregaListView()
{
Dados objDados = new Dados();
List<CrudBasico.Dados.Clientes> listaClientes = new List<Dados.Clientes>();
listaClientes = objDados.Consultar();
ListViewItem objListViewItem = new ListViewItem();
foreach (var itemLista in listaClientes)
{
objListViewItem.Text = itemLista.IdCliente.ToString();
objListViewItem.SubItems.Add(itemLista.Nome);
objListViewItem.SubItems.Add(itemLista.Endereco);
objListViewItem.SubItems.Add(itemLista.Telefone);
objListViewItem.SubItems.Add(itemLista.Sexo);
if (itemLista.Ativo)
objListViewItem.SubItems.Add("Sim");
else
objListViewItem.SubItems.Add("Não");
objListViewItem.SubItems.Add(itemLista.DataCadastro.ToShortDateString());
lsvClientes.Items.Add(objListViewItem);
}
}
GOSTEI 0
Joel Rodrigues
05/07/2013
Experimente colocar a seguinte linha dentro do foreach:
ListViewItem objListViewItem = new ListViewItem();
GOSTEI 0
Raniel Gomes
05/07/2013
Grande Joel consegui cara era só isso mesmo abraço, e muito obrigado!
GOSTEI 0
Joel Rodrigues
05/07/2013
Show de bola. Que bom que deu certo.
Abraço.
Abraço.
GOSTEI 0
José
05/07/2013
Tópico concluído.
GOSTEI 0