Limpiar datagrid vinculado a un ObservableCollection - WPF

<< < (2/2)

TrashAmbishion:
Cita de: Serapis en  8 Marzo 2024, 01:37 am

Si en un bucle quieres eliminar todos los ítems, tienes que hacerlo de una de estas dos formas:

- Desde el final hacia atrás... (porque no queda ninguno huérfano por culpa de una eliminación en medio, que sea preciso atender... según sea el caso conforme al tipo de colección operada).
- Eliminado siempre el item primero (de dicha colección). Porque tras ser eliminado, el siguiente pasa a ser el primero (Esto sin embargo suele comportar más trabajo interno de reasignación de valores (internos), el caso previo este tipo de operación minimiza esto, pues suele limitarse a descontar la cantidad total de ítems y ya).

Nota que añadir y eliminar en un mismo bucle aunque es posible debes tener bien claro la posición que tiene en todo momento cada cual, de lo contrario, es posible que acabes eliminado items que previamente has añadido y por lo tanto cuando revises el resultado final, no consten los que tú pretendías que quedaran.

Considera, piensa en qué sucede con los ítems por encima (o hijos de) a uno dado cuando eliminas o cuando insertas conforme al tipo de colección que estés usando. Por ejemplo si es una lista enlazada, un array, un árbol, una tabla hash, etc...


...y sí, mirando el código ocurre como te dice Elektro, recorres en un bucle enumerado añadiendo ítems, para acto seguido dar una orden de borrar (el contenido de) la colección en la que se ha insertado el item seleccionado, no tierne sentido, o bien no precisas añadir nada, o bien no tiene sentido que los borres, al menos no con cada añadido, en todo caso al final (y una sola vez), además estás borrando de  'PatrullasRutas', no de la colección 'GenerarRutas'... que es quizás tu objetivo...

Quizás no tengas muy claro que quieres hacer, o por lo menos como debes hacerlo. si al menos indicaras cual es tu objetivo final, se te podría indicar las pautas a seguir, pero preguntas por un error sin dejar claro que es lo que pretendes que haga tu código.


Gracias, le doy una vuelta para revisar nuevamente...

Navegación

[0] Índice de Mensajes

[*] Página Anterior