Bonjour,

Novice sur les backgroundworker et les threads, je souhaite lorsque je lance ma commande qui déplace et supprime des fichiers entre autre afficher l'état d'avancement de la commande. La progressBar se trouvant dans un autre form, je n'arrive pas à afficher la valeur exacte celle-ci restant à 0.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
private void Worker_DoWork(object sender, DoWorkEventArgs e)
{
String[] Unique_File = File.ReadAllLines(@".\CopyPasteFile.txt");
foreach (string s in Unique_File)
       {
            File.Copy(Path.Combine(tmpPath, s), Path.Combine(TempFolder, s), true);
 
       }
var fileCount = (from file in Directory.EnumerateFiles(TempFolder, "*.", SearchOption.AllDirectories) select file).Count();
for (int i = 0; i < (fileCount + 1); i++)
       {
            Worker.ReportProgress(i);
            Thread.Sleep(50);
       }
}
 
private void Worker_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
Archive.CopyPaste_Label_Pourcentage.Text = (e.ProgressPercentage.ToString() + "%");
Archive.Message = "Processing data, please wait ... ";
Archive.ProgressValue = e.ProgressPercentage;
}
Merci de votre aide et bonne journée.