private void DownloadExtensionIndex()
    {
      try
      {
        tempUpdateIndex = Path.GetTempFileName();
        DownloadFile dlg = new DownloadFile();
        dlg.Client.DownloadProgressChanged += Client_DownloadProgressChanged;
        dlg.Client.DownloadFileCompleted += UpdateIndex_DownloadFileCompleted;
        dlg.StartDownload(UpdateIndexUrl, tempUpdateIndex);


        //WebClient webClient = new WebClient();
        //webClient.DownloadProgressChanged += Client_DownloadProgressChanged;
        //webClient.DownloadFileCompleted += updateIndex_DownloadFileCompleted;

        //tempIndexFile = Path.GetTempFileName();
        ////listBox1.Items.Add(onlineFile);
        ////progressBar1.Value++;
        ////progressBar1.Update();
        ////listBox1.Update();
        ////Update();
        //Client.DownloadFileAsync(new Uri(UpdateIndexUrl), tempIndexFile);
      }
      catch (Exception ex)
      {
        MessageBox.Show("Error :" + ex.Message);
      }
    }
 private string GetPackageLocation(PackageClass packageClass)
 {
   string newPackageLoacation = packageClass.GeneralInfo.Location;
   if (!File.Exists(newPackageLoacation))
   {
     newPackageLoacation = packageClass.LocationFolder + packageClass.GeneralInfo.Id + ".mpe2";
     if (!File.Exists(newPackageLoacation))
     {
       if (!string.IsNullOrEmpty(packageClass.GeneralInfo.OnlineLocation))
       {
         newPackageLoacation = Path.GetTempFileName();
         DownloadFile dlg = new DownloadFile();
         dlg.Client.DownloadProgressChanged += Client_DownloadProgressChanged;
         dlg.Client.DownloadFileCompleted += Client_DownloadFileCompleted;
         dlg.StartDownload(packageClass.GeneralInfo.OnlineLocation, newPackageLoacation);
       }
     }
   }
   return newPackageLoacation;
 }