Как отобразить индикатор выполнения во время копирования

Привет, у меня есть форма C #, которая снабжена кнопкой и картинкой

эта кнопка имеет основное задание (открыть диалог для выбора файла), после чего этот файл будет скопирован в определенную папку

если этот файл был огромным, мне нужно, чтобы индикатор выполнения отображался в форме и увеличивался до тех пор, пока файл не будет скопирован.

13.10.2009 13:36:05
0% на 7 вопросов? Уч.
Jacob 13.10.2009 13:39:17
Хашим аль-Араб , если ответ поможет вам решить вашу проблему, нажмите на большую галочку слева от ответа. Это поможет другим в будущем и вознаградит тех, кто отвечает.
Colin Pickard 13.10.2009 13:43:06
3 ОТВЕТА

Вы можете использовать BackgroundWorker для этого. Есть множество примеров, которые показывают, что вы хотите сделать.

1
13.10.2009 13:37:49
Я использовал это время от времени, надеюсь, что это может быть полезным dotnetperls.com/backgroundworker
John Lechowicz 13.10.2009 13:39:25

См. Класс System.Windows.Forms.ProgressBar и связанный с ним пример в документации. Вы, вероятно, в конечном итоге тоже будете использовать компонент BackgroundWorker. Вот статья с примером использования .

3
13.10.2009 13:40:01

ShFileOperationс FO_COPYи FOF_SIMPLEPROGRESSфлагом.

Вы должны будете использовать P / Invoke, чтобы сделать это.

1
13.10.2009 14:12:51
Я предполагаю, что OP не знает, как использовать P / Invoke.
JeffH 13.10.2009 13:59:10
Я использовал это решение в прошлом, мне кажется, это намного проще, чем использовать свое решение с помощью фонового работника. Хороший ресурс здесь: pinvoke.net/default.aspx/shell32.SHFileOperation
Mark 13.10.2009 14:28:13