Esempio n. 1
0
        public FileDownloader(Uri url)
        {
            Url = url;

            _client.DownloadProgressChanged += (sender, args) =>
            {
                // calculate percentage
                var bytesIn = double.Parse(args.BytesReceived.ToString());
                var totalBytes = double.Parse(args.TotalBytesToReceive.ToString());
                var percentage = bytesIn / totalBytes * 100;

                var evArgs = new ProgressChangedEventArgs(int.Parse(Math.Truncate(percentage).ToString()));

                // notify subscribers about progress
                OnProgressChanged(evArgs);
            };

            _client.DownloadFileCompleted += (sender, args) =>
            {
                OnFileDownloadCompleted(new FileDownloadCompletedEventArgs());
            };
        }
Esempio n. 2
0
 protected virtual void OnProgressChanged(ProgressChangedEventArgs e)
 {
     if (ProgressChanged != null)
         ProgressChanged(this, e);
 }
 private void OnProgressChanged(ProgressChangedEventArgs e)
 {
     if (ProgressChanged != null)
         ProgressChanged(null, e);
 }