Liste répertoire + sous-répertoire dans un DataGridView

Signaler
Messages postés
30
Date d'inscription
mardi 28 février 2006
Statut
Membre
Dernière intervention
5 mars 2013
-
Messages postés
15194
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
6 décembre 2020
-
Bonjour,

Je cherches à lister le contenu plusieurs dizaines de répertoire et sous-répertoire, selon une extension spécifique.

Je ne peux pas utiliser .Net 4.0 ou plus (je suis avec VS 2008 sous XP).

Problème #1 : mon programme fonctionne mais il prend du temps et VS finit par me donner une exception en me disant que l'opération fera en sorte que le programme ne répondra plus (si il continue). J'utilise la fonction GetFiles et elle me retourne seulement la liste des fichiers à la fin de l'opération de recherche.

Je dois donc trouver un moyen d'avoir la liste des fichiers au fur et à mesure que le programme les trouvent.

Problème #2 : J'ai trouvé en fouillant et en lisant que je pouvais mettre la commande dans un IEnumarate (récursivité) dans une liste et affecté cette liste au DataSource de mon DataGridView. Ça fonctionne. Cependant, je ne veux pas toute les infos du fichier mais seulement le nom et le chemin (path).

Comme faire pour que je puisses avoir seulement les colonnes que je veux dans mon DataGridView ?

Voici la commande récursive que j'utilise :

private void BLister_Click(object sender, EventArgs e)
        {
            var result = from file in
                             new DirectoryInfo(chemin).GetFiles("*.JPG", SearchOption.AllDirectories)
                         select file;
            DGView.DataSource = result.ToList();

1 réponse

Messages postés
15194
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
6 décembre 2020
474
Bonsoir,

pour avoir le résultat au fur et à mesure, regarde du coté du backgroundworker.

Pour choisir les colonnes dans le datagridview, regarde . Sinon si tu ne veux qu'une colonne, tu peux utiliser une listbox en te servant de la propriété
displaymember.


Whismeril