Ce n'est pas une question, parce que je l'ai déjà répondu. Mais cela peut aussi aider les autres.La suppression de plusieurs éléments dans une collection liée à un datagridview prend une éternité
Voici ce qui se passe:
- Créer une WinForm avec un Datagridview et lier une subsonique ... Collection avec plus de 500 objets chargés à lui
- Ajouter des colonnes à la grille de données et de faire au moins un AutoSizeMode = remplissage
- logique Ajouter à supprimer toutes les colonnes sélectionnées (par exemple à chaque touche -> supprimer)
- Marquez tous les dossiers et les supprimer
Cela devrait prendre environ 30 secondes. sur un PC haut de gamme (et échelles: 1 min pour 1000 ...)
Cause:
Chaque fois que vous supprimez une ligne collections événement ListChanged est tiré ce qui provoque la datagridview recalculer l'espace nécessaire à la colonne autosized (si quelqu'un est intéressé par les "internes" Je joint un graphe d'appel
btw - Je suppose que vous voulez dire "= faux" (minuscule), et "= vrai" la deuxième fois. –
Si la deuxième partie est la réponse, vous devez l'ajouter à la section des réponses, puis la marquer comme réponse. Alors les gens peuvent le considérer comme la réponse, et vous obtenez la réputation sur SO pour avoir laissé une bonne réponse (et peut-être un badge pour répondre à votre propre question). –