public WebFile(Uri fileUri, string filePath)
 {
     if (fileUri == null || filePath == null)
     {
         throw new ArgumentNullException();
     }
     FileUri  = fileUri;
     FilePath = filePath;
     m_WebClient.DownloadFileCompleted   += WebClientOnDownloadFileCompleted;
     m_WebClient.DownloadProgressChanged +=
         (sender, args) => DownloadProgressChanged.Handle(h => h(sender, args));
 }