void finCopieDestination(object sender, RunWorkerCompletedEventArgs e) { if (fichiersVersDestination.Count > 0) { progressBar_progression.Value++; label_fichierEnCours.Text = destination + fichiersVersDestination.First(); copie = new BackgroundWorker(); copie.DoWork += new DoWorkEventHandler(lancerCopie); copie.RunWorkerCompleted += new RunWorkerCompletedEventHandler(finCopieDestination); ThreadTraitementFichier threadCopie = new ThreadTraitementFichier(); threadCopie.source = source + fichiersVersDestination.First(); threadCopie.destination = destination + fichiersVersDestination.First(); copie.RunWorkerAsync(threadCopie); fichiersVersDestination.RemoveAt(0); } else { button_source.Enabled = true; button_destination.Enabled = true; changerMode(mode); button_quitter.Enabled = true; label_fichierEnCours.Visible = false; resetListes(); label_wait.Text = "Terminé avec succès"; } }
void finCopieSource(object sender, RunWorkerCompletedEventArgs e) { if (fichiersVersSource.Count > 0) { progressBar_progression.Value++; label_fichierEnCours.Text = source + fichiersVersSource.First(); copie = new BackgroundWorker(); copie.DoWork += new DoWorkEventHandler(lancerCopie); copie.RunWorkerCompleted += new RunWorkerCompletedEventHandler(finCopieSource); ThreadTraitementFichier threadCopie = new ThreadTraitementFichier(); threadCopie.source = destination + fichiersVersSource.First(); threadCopie.destination = source + fichiersVersSource.First(); copie.RunWorkerAsync(threadCopie); fichiersVersSource.RemoveAt(0); } else { finCopieDestination(null,null); } }