![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| fromrus |
|
||||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 103 Регистрация: 30.3.2008 Репутация: нет Всего: нет |
пытаюсь настроить прогрессБар под копирование файлов.Для этого использую BW/вот код класса,где присутствует метод копирования :
А вот кнопка по которой копируется папка(ну во обще-то она как раз и не копируется):
ну и соответственно события worker'a:
никак не одупляю че передавать в аргумент RunWorkerAsync....Помощи прошу! Добавлено через 2 минуты и 38 секунд эт забыл написать..))))
Но проблема та же! |
||||||||
|
|||||||||
| vponomarov |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 407 Регистрация: 11.8.2007 Где: Киев Репутация: 2 Всего: 12 |
на сколько я понимаю тебе нужно передавать в RunWorkerAsync список файлов, которые необходимо скопировать.
или вообще ничего не передавай, если список получается каким-то другим образом. проблема не совчем понятна... |
|||
|
||||
| fromrus |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 103 Регистрация: 30.3.2008 Репутация: нет Всего: нет |
надо чтоб файлы копировались в рабочем потоке,а прогресс бар отображал бы этот прогресс.Я не понимаю что передавать в параметр RunWorkerAsync...Если ничего не передавать вылезет тот же ексепшн,что и сейчас
|
|||
|
||||
| 1stain |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 486 Регистрация: 30.7.2007 Где: Киев - Харьков Репутация: 3 Всего: 40 |
Ты видимо не совсем понял назначение работы с потоками и с сабжем в частности. Дополнительный поток как раз нужен для того, чтобы вынести в него операции, требующие много времени, в данном случае - работу с файлами. На мой взгляд, копирование надо перенести в БВ, передавать аргументом соответственно путь источника и назначения. После завершения копирования каждого файла пересчитывать проценты прогресса. Это сообщение отредактировал(а) 1stain - 8.5.2008, 09:35 -------------------- Все знают, что это невозможно. Но вот приходит невежда, которому это неизвестно - он-то и делает открытие. (Albert Einstein) ![]() |
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 8 Всего: 232 |
Туда передаётся любой произвольный объект, который потом примет твой метод bw_DoWork через e.Argument. Естесственно, что в bw_DoWork объект приводить нужно явно:
-------------------- ![]() |
|||
|
||||
| Ram1reS |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 141 Регистрация: 25.4.2008 Где: Москва Репутация: 2 Всего: 5 |
Таким образом можно организовать копирование файлов в BackgroundWorker. Не совсем понятно как Вы собирались обновлять прогрессбар... Вам надо сначало узнать сколько всего элементов будут копироваться, установить это число в progressBar.Maximum, вести счетчик уже скопированных элементов и этим числом обновлять progressBar.Value (вызовом BackgroundWorker.ReportProgress(FilesCopied)) + у BackgroundWorker должен стоять флажок WorkerReportsProgress. --------------------
|
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | .NET для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |