Des informations qui ne s'affichent pas

Résolu
Zayann Messages postés 75 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 15 juillet 2015 - 29 mars 2010 à 09:33
Zayann Messages postés 75 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 15 juillet 2015 - 29 mars 2010 à 09:59
Bonjour à tous...
J'ouvre ce topic à la suite de mon précédent, que je viens de "fermé" (si certain veulent savoir de quoi il retourne : "Aide pour une ProgressBar")

Après mon problème de progressbar résolue, un autre se pose devant moi...

Rappel du projet pour ceux ayant manqué le premier épisode :
Je fait un petit soft pour faire des sauvegarde incrémentielle de dossiers sélectionné par l'utilisateur vers un emplacement X ou Y.

Le problème est le suivant (il est double en fait) :
Je fait une tentative d'écriture des fichiers listés avec un "Try... Catch... Finally..."

Voila le code...
While Index < List_New_File.count()
[list]
Try
System.IO.File.Copy(List_New_File(Index), Path)
Catch ex As Exception
MonMessage = ex.message
Finally
ProgressBar1.PerformStep()
Counter += 1
Show_Percent.Text = Int(Counter * 100 / Total).ToString + " %"
End Try
/list
Index += 1
End While

Premier problème :

Le label "show_percent" n'affiche le pourcentage que lorsque la copie de tous les fichiers et dossier est terminé. . Je passe donc directement de 0 à 100 %
Et là, je ne voit pas pourquoi...

Deuxième problème (lié au précédent) :
Mes dossiers sélectionné sont affichés par un datagridview...
De la même façon, j'ai une cellule pour afficher une case coché quand la copie de ce dossier est terminé... Or, toute les cases représentant les dossiers sont affiché en même temps à la fin de la fonction qui gère les boucles de copie...
Comme je passe de 0 à 100%, je passe de rien à tout cocher en fin de fonction...

Autre précision, je fais trois boucles successives (celle-là étant la deuxième), pour copier les nouveaux dossiers, les nouveaux fichiers et enfin faire un traitement pour les fichiers à mettre à jour... la fonction étant terminée à la fin de ce dernier traitement...

Et là je cale...

Help...
Please...

2 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
29 mars 2010 à 09:40
Salut
Application.DoEvents afin que ton programme laisse respirer le système afin qu'il ait le temps de rafraichir les objets graphiques

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Zayann Messages postés 75 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 15 juillet 2015 1
29 mars 2010 à 09:59
MERCI !!!!!
ça marche...
Je me coucherai moins bête ce soir...

A+
Rejoignez-nous