using System; namespace RJH.Utils.WebDownload { public delegate void DownloadCompleteHandler( byte[] dataDownloaded ); /// /// Summary description for DownloadThread. /// public class DownloadThread { private WebDownload webDL; public event DownloadCompleteHandler CompleteCallback; public event DownloadProgressHandler ProgressCallback; private string _downloadUrl = ""; public string DownloadUrl { get { return _downloadUrl; } set { _downloadUrl = value; } } public void Cancel() { if ( webDL != null ) webDL.CancelDownload = true; } public void Download() { if ( CompleteCallback != null && DownloadUrl != "" ) { webDL = new WebDownload(); byte[] downloadedData = webDL.Download( DownloadUrl, ProgressCallback ); CompleteCallback( downloadedData ); } } } }