/// <summary> /// Called when there is change in Download Progress /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void OnProgressChanged(OnProgressChangedEvent e) { if (IsDownloadComplete == false) { DataDownloaded = e.BytesReceived; FileSize = e.TotalBytesToReceive; DownloadSpeed = (int)(e.TotalBytesThisSession / SW.Elapsed.TotalSeconds); RemainingTime = (e.TotalBytesToReceive - e.BytesReceived) / DownloadSpeed; Progress = e.Progress; Paused = e.Paused; if (e.Progress >= 100) { IsDownloadComplete = true; } if (e.Paused) { LogMessages = "Download Paused"; } else { LogMessages = "Downloading " + GetDownloadFileName(); } } else { DataDownloaded = FileSize; DownloadSpeed = 0; RemainingTime = 0; Progress = 100; } }
private static void ConverterOnProgressChanged(object sender, ProgressChangedArgs progressChangedArgs) { OnProgressChangedEvent?.Invoke(progressChangedArgs.Description); }