Error al tratar de insertar dinamicamente en listas de c# (No se puede agregar o insertar elementos en más de un sitio) – c# listview

Pregunta:


Bueno actualmente quiero llenar una listview con informacion de mi Base de Datos, pero me sale el siguiente error:

Can not add or insert item in more than one site. You must first
remove it from its current location or clone it.

Codigo Actual:

    while (reader.Read())
    {
        lvi.Text = reader.GetString("Articulo");
        lvi.SubItems.Add(reader.GetString("Costo"));
        lvi.SubItems.Add(reader.GetString("Importancia"));
        lstData.Items.Add(lvi);
    }
    connection.Close();

El primer registro si lo ejecuta correctamente pero despues en el segundo es cuando me sale este error.

Codigo de la Lista:

        lstData.View = View.Details;

        lstData.Columns.Add("Nombre");
        lstData.Columns.Add("Precio");
        lstData.Columns.Add("Importancia");
        lstData.Columns[2].Width=110;
        ListViewItem lvi = new ListViewItem();

Preguntado por: David

Mauricio Arias Olave

Después de esta línea:

lstData.Items.Add(lvi);

Coloca:

lvi = new ListViewItem();

Tu código modificado quedaría así:

while (reader.Read())
{
    lvi.Text = reader.GetString("Articulo");
    lvi.SubItems.Add(reader.GetString("Costo"));
    lvi.SubItems.Add(reader.GetString("Importancia"));
    lstData.Items.Add(lvi);

    // Limpia la variable para poderla usar al iniciar el ciclo.
    lvi = new ListViewItem();
}
connection.Close();

El error se debe a que estás usando la variable lvi sin haberla limpiado de los datos anteriores.

Fuente

Related Posts:

ListView widget improved to use Masonry (http://masonry.desandro.com/)
...
Declarar un array de structs de tamaño dinamico – c++
Pregunta: buenas, lo que quiero conseguir es declarar un struct con array que tenga su tamaño dinamico, pero cuando lo hago el programa se me ...
Problemas con el registro de un archivo .tlb – c# windows vb6
Pregunta: La situación es la siguiente: He creado un pequeño proyecto de librería de clases en C# que me permita realizar ciertas operaciones. El nombre del ...
Uso de js y c# en unity. ¿Igual rendimiento? – javascript c# unity3d
Pregunta: Estoy comenzando con unity . Y veo que se pueden usar c# y js para programar. Mi pregunta es si tanto c# como js ...
Cómo puedo incluir librería beecrypt en un proyecto en C – c
Pregunta: Tengo un archivo .lib (librería) y quiero usarla en un proyecto de C. Para ser más especifica estoy intentando instalar beecrypt que es una librería ...
Ocultar y Mostrar con Mapa de Google – javascript c# asp.net
Pregunta: Tengo un div en mi página ASP.NET que contiene un Mapa de Google, y necesito mostrarlo y ocultarlo pero no me funciona. Este es el ...
para que sirve #ifdef_MSDOS_ en c++? – c++
Pregunta: He tenido problemas porque donde trabajo usan una versión de dev c++ 4.9 y yo uso en mi hogar la 5.1, ...
¿Como instalar C# en SublimeText? – c# sublimetext3 sublimetext
Pregunta: El problema es que actualmente quiero programar sobre esta tecnologia, pero no quiero descargar aun el visual studio porque consume recursos y es bastante ...
Thread en c++ error compilacion – c++
Pregunta: Estoy empezando con threads y he estado siguien varios tutos y creo que esta todo bien, pero a la hora de ejecutarlo me da ...
¿Es posible capturar un segfault con try/catch? – c++ try-catch
Pregunta: Para comprobar si es posible hice lo siguiente: try { int *x = 0; *x = 1234; } catch(...) { ...
Conexion C# con PostgreSQL mediante proveedor Npgsql – c# postgresql
Pregunta: Hola el problema es que la conexión esta bien solo cuando estoy utilizando el ODBC, pero cuando lo cambio al proveedor de PostgreSQL Npgsql, ...
Construcción extraña: objeto = funcion1() && funcion2() ¿Posible? – c#
Pregunta: acabo de encontrarme en una documentación una construcción como esta: var pose = Body.LeftHand.Near(Body.Head) && Body.LeftArm.Bended(90); posees una objeto que debe crearse a partir de la ...
Cómo importar datos de un Excel a DataGrid pero iniciarlo en la segunda fila? – c# sql-server postgresql
Pregunta: Disculpen una duda, como cargar de excel un formato iniciando en la segunda fila? tengo este código solamente que el excel esta justificado en ...
No completa el ciclo foreach – c#
Pregunta: Estoy haciendo un método para invertir palabras que contengan 5 o mas letras. El problema que tengo es que si mi cadena tiene mas ...
Obtener elementos específicos de un array – c array optimización
Pregunta: Buenas, si yo por ejemplo hago: char buf; fgets(buf, 1024, stdin); ¿Puedo coger los caracteres que escribí del array sin coger los elementos que no utilicé? ¿O ...

Add a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *