ProgressBar, копирование директорий, отдельная библиотека - C#

Узнай цену своей работы

Формулировка задачи:

Пишу курсовую, нужно скопировать директорию целиком, создал отдельную библиотеку, в которой и написал метод копирования файлов, рекурсивно(если есть вариант получше, подскажите, пожалуйста). Хочу к процессу копирования припилить прогрессбар. FileSystemWatcher припилить не могу... нужно отдельный поток? Вообще, где(что) лучше прочитать про потоки? Потому что даже при процессе копирования файлов, я не могу пользоваться программой, виснет...

Решение задачи: «ProgressBar, копирование директорий, отдельная библиотека»

textual
Листинг программы
// Кнопка
public void button1_press()
{
   GlobalVars.Source = ОТКУДА_КОПИРОВАТЬ;
   GlobalVars.Dest = КУДА_КОПИРОВАТЬ;
   if(!backgroundWorker1.IsBusy) // проверка на занятость
   backgroundWorker1.DoWork();
}
 
// функция отдельного потока
public void backgroundWorker1_DoWork()
{
    // Опять же, условно =)
    ТВОЯ_ФУНКЦИЯ_КОПИРОВАНИЯ(GlobalVars.Source, GlobalVars.Dest);
}
 
class GlobalVars // класс глобальных переменных (в c# не очень советуют использовать их, но никто не запрещает)
{
   public static string Source;
   public static string Dest;
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.364 из 5