Example #1
0
        private async ValueTask OnDownloadProgressChanged(int bytesReceived, int bytesTotal)
        {
            var eventList = DownloadProgressChanged;

            if (eventList == null)
            {
                return;
            }

            var args = new AsyncDownloadProgressChangedEventArgs(bytesReceived, bytesTotal);

            var tasks = new List <Task>();

            foreach (AsyncDownloadProgressChanged handler in eventList.GetInvocationList())
            {
                tasks.Add(handler(this, args));
            }

            await Task.WhenAll(tasks).ConfigureAwait(false);
        }
Example #2
0
        private static Task Download_DownloadProgressChanged(object sender, AsyncDownloadProgressChangedEventArgs eventArgs)
        {
            Console.WriteLine($"{eventArgs.ProgressPercentage:0.##}%");

            return(Task.CompletedTask);
        }