Асинхронная загрузка с прогрессом

82
02 октября 2021, 20:10

Разрабатываю программу, с помощью которой можно было бы асинхронно скачивать до трех картинок и смотреть на прогресс (на форме 3 кнопки "скачать" и 3 пикчербокса с прогрессбаром). Из процесса гугления понял, что использование WebClient для таких целей не подходит, зато написали, что подходит HttpClient (полагаю, что создание n штук WebClient-объектов, где n - кол-во файлов, плохая практика).

Заменив в коде тип WebClient на HttpClient, обнаружил, что отсутствуют события, с помощью которых WebClient давал возможность легко отображать прогресс загрузки. Жду ваших идей по поводу того, как можно отображать прогресс загрузки.

P.S. Использовал следующий код для отображения прогресса с WebClient:

  wc.DownloadProgressChanged += (o, e) =>
        {
            MethodInvoker method = () =>
            {
                int percent = e.ProgressPercentage;
                progressBar1.Value = percent;
                label1.Text = $"{percent}/100 %";
            };
            this.Invoke(method);
        };
        wc.DownloadFileCompleted += (o, e) =>
        {
            MessageBox.Show("The download is completed!");
            progressBar1.Value = 0;
        };
READ ALSO
Получение объекта через клик - unity

Получение объекта через клик - unity

делаю игру на unityМне нужно сделать так, чтобы перменная gameobject target была равна объекту, на который мы нажали

177
Warning:You are trying to create a MonoBehaviour using the 'new' keyword

Warning:You are trying to create a MonoBehaviour using the 'new' keyword

Постоянно вываливается предупреждение:

257
Алгоритм сортировки слиянием(C#)

Алгоритм сортировки слиянием(C#)

Отсмотрел я значит вот такую лекцию по этому Алгоритму(на питоне правда но как я понял сути дела не меняет по крайней мере для функции слияния...

167
Random.NextDouble и Random.Next не работают

Random.NextDouble и Random.Next не работают

Тут ошибку пишет: Ошибка CS1061 "Random" не содержит определения "Next", и не удалось найти доступный метод расширения "Next", принимающий тип "Random" в качестве...

98