Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,898

Создать класс с методами файлового менеджера

13.07.2018, 08:16. Показов 923. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Нужна помощь. А именно создать класс файлового менеджера
Причина в том что например все методы выводят на прогресс бар статус.
Например распаковка из архива выглядит так
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 void ExtractArchiveСampaign(string aDirectoryСampaigns, string aFileName)
        {
            new System.Threading.Thread(() => {
                using (ZipFile zip = new ZipFile(aFileName))
                {
                    zip.ExtractProgress += zipProgressExtract;
 
                    zip.ExtractAll(aDirectoryСampaigns);
                }
            }).Start();
        }
 
private void zipProgressExtract(object sender, ExtractProgressEventArgs e)
        {
            BeginInvoke((MethodInvoker)(delegate
            {
                if (e.EventType == ZipProgressEventType.Extracting_AfterExtractEntry)
                {
                    if (e.EntriesExtracted < e.EntriesTotal)
                        bprgBar.Value = e.EntriesExtracted * 100 / e.EntriesTotal;
                    else
                        bprgBar.Value = 0;
                }
 
            }));
        }
Его необходимо вынести в отдельный класс
Но класс не должен знать об элементах формы по факту класс будет использоваться не в 1 форме. Я не знаю как правильно перенести. На ум приходит только вот так
C#
1
2
3
4
5
static ZipFile ExtractArchiveСampaign(string aFileName)
        {
var zip = new ZipFile(aFileName);
return zip;
        }
Но это не правильно. Вроде это можно сделать через делегаты. Чуть чуть об них почитал но так и не смог понять как их можно пременить в моей ситуацию. Помогите пожалуйста но класс не должен знать об элементах формы вообще. По сути класс нужен чтобы создать методы файлового менеджера которые будут использованы в нескольких формах
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.07.2018, 08:16
Ответы с готовыми решениями:

Исходник файлового менеджера
Есть ли у кого нибудь исходник файлового менеджера(проводника) на C# в visual studio 2012 -2017

Каково устройство файлового менеджера?
Доброго времени суток. хочу сделать простенький файловый менеджер, что бы он мог выполнять простейшие функции, например: удаление,...

Создать абстрактный базовый класс Тройка чисел с виртуальными методами увеличения на 1. Создать производный класс Время со своими функциями
Здравствуйте, пожалуйста помогите написать код к данной задаче, с таким условием: Создать абстрактный базовый класс Тройка чисел с...

1
 Аватар для Alexandr_7
87 / 22 / 6
Регистрация: 29.12.2015
Сообщений: 1,898
31.07.2018, 09:54  [ТС]
Ну может кто поможет. Просто мне эти методы в 2х окнах нужно будет использовать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
31.07.2018, 09:54
Помогаю со студенческими работами здесь

Реализация файлового менеджера
Нужно сделать программу что-то вроде &quot;Файлового менеджера&quot;(Упрощённый, то есть отображение структуры файлов, функции такие как: копировать,...

Написание консольного файлового менеджера
Добрый день, в университете задали проект по созданию консольного Файлового менеджера на C++ в котором можно: 1)Перемещать между...

Смена файлового менеджера по умолчанию
Как сменить файловый менеджер по умолчанию на Linux mint 17 MATE? Надо чтобы все папки, включая computer:///, trash:///, домашнюю и т.д.,...

Совте о создании файлового менеджера
Мне нужно написать файловый менеджер с удобным интерфейсом.Какие библиотеки и функции мне нужно использовать в своей программе.Направьте...

Разработка файлового менеджера на Turbo Pascal 7.0
Здравствуйте. Посе опыта с файловым менеджером на QuickBasic 4.5 я решил начать лучше изучать программирование на компилируемом языке. За...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru