private void downloadFiles_button_Click(object sender, EventArgs e) { maximumDownloads = (int)maximumDownloads_numericUpDown.Value; checkedFiles = new List <CloudFile>(); checkedFilesSize = 0; GetCheckedFiles((((SortedTreeModel)newFilesTreeViewAdv.Model).InnerModel as TreeModel).Nodes[0]); DialogResult dialogResult = MessageBox.Show($"Got links for {checkedFiles.Count} files [{(int)(checkedFilesSize / 1000000)} MB] Continue?", "Result", MessageBoxButtons.YesNo); if (dialogResult == DialogResult.No) { return; } if (folderNewFiles_checkBox.Checked) { Directory.CreateDirectory(MainForm.syncFolderPath + @"\New Files " + DateTime.Now.ToShortDateString()); } ProgressBar[] usedProgressBars = new ProgressBar[maximumDownloads]; Label[] usedLabels = new Label[maximumDownloads + 1]; for (int i = 0; i < maximumDownloads; i++) { usedProgressBars[i] = progressBars[i]; usedLabels[i] = progressLabels[i]; } usedLabels[maximumDownloads] = progressLabels[progressLabels.Count - 1]; commonDownload = new CommonDownload(checkedFiles, usedProgressBars, usedLabels, cloudServiceType, overwriteMode_comboBox.SelectedIndex, NetworkCredential, folderNewFiles_checkBox.Checked); commonDownload.Start(); stopDownload_button.Enabled = true; stopDownload_button.Visible = true; }
public CommonFileDownload(CommonDownload commonDownload, CloudFile fileInfo, string savePath, NetworkCredential networkCredential) { ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12; SavePath = savePath.Replace("%27", "'"); FileInfo = fileInfo; var progressHandler = new Progress <double>(value => { ProgressPercent = value; }); progressHandler.ProgressChanged += new EventHandler <double>(ProgreessChanged); Progress = progressHandler as IProgress <double>; ParentDownload = commonDownload; _networkCredential = networkCredential; }