public async void Add(DownloadDataModel downloadDataModel, Task <byte[]> callback) { downloadDataModel.Id = counter++; DownloadedDataList.Add(downloadDataModel); Added?.Invoke(downloadDataModel); downloadDataModel.Data = await callback; Downloaded?.Invoke(downloadDataModel); }
public void Save(DownloadDataModel downloadDataModel) { SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.AddExtension = true; saveFileDialog.CheckPathExists = true; saveFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory); saveFileDialog.FileName = downloadDataModel.Name; saveFileDialog.Filter = getFilter(downloadDataModel.DataType); saveFileDialog.OverwritePrompt = true; saveFileDialog.RestoreDirectory = true; saveFileDialog.ShowHelp = false; saveFileDialog.SupportMultiDottedExtensions = false; saveFileDialog.Title = Properties.Resources.SaveAs; if (saveFileDialog.ShowDialog() == DialogResult.OK) { if (File.Exists(saveFileDialog.FileName)) { File.Delete(saveFileDialog.FileName); } File.WriteAllBytes(saveFileDialog.FileName, downloadDataModel.Data); Remove(downloadDataModel); } }
public void Remove(DownloadDataModel downloadDataModel) { DownloadedDataList.Remove(downloadDataModel); Removed?.Invoke(downloadDataModel); }