public void AddOrUpdateFileInfo(FileUpload fu) { if (fu.UniqueKey == "") { return; } StorageFile sf = null; try { sf = (StorageFile)settings.First(f => f.Key == fu.UniqueKey).Value; } catch (Exception) { } if (sf != null) { sf.UploadedRanges = fu.ResponseText; } else { sf = new StorageFile(); sf.Key = fu.UniqueKey; sf.SessionId = fu.SessionId; sf.UploadUrl = fu.UploadUrl.ToString(); sf.UploadedRanges = fu.ResponseText; sf.CreatedOn = DateTime.Now; try { settings.Add(sf.Key, sf); } catch (Exception) { } } Flush(); }
void addFilesButton_Click(object sender, RoutedEventArgs e) { OpenFileDialog dlg = new OpenFileDialog(); dlg.Filter = FileDialogFilter; dlg.Multiselect = false; if ((bool)dlg.ShowDialog()) { files.Clear(); foreach (FileInfo file in dlg.Files) { FileUpload upload = new FileUpload(this.Dispatcher, file); upload.StatusChanged += new EventHandler(upload_StatusChanged); upload.UploadProgressChanged += new ProgressChangedEvent(upload_UploadProgressChanged); //debug upload.PropertyChanged += new System.ComponentModel.PropertyChangedEventHandler(upload_Debug); try { callback.Invoke("onFileChoose", upload.SessionId, upload.Name, upload.FileLength); //HtmlPage.Window.Invoke("newUploadCallback", CallbackData, upload.SessionId, upload.Name, upload.FileLength, DateTime.Now.Millisecond, dlg.Files.Count()); } catch (Exception) { } files.Add(upload); } } }
public void DeleteFileInfo(FileUpload fu) { if (fu.UniqueKey != "") { try { settings.Remove(fu.UniqueKey); } catch (Exception) { } Flush(); } }
public StorageFile GetFileInfo(FileUpload fu) { StorageFile sf = null; if (fu.UniqueKey != "") { try { sf = (StorageFile)settings.First(f => f.Key == fu.UniqueKey).Value; } catch (Exception) { } } return sf; }
void addFilesButton_Click(object sender, RoutedEventArgs e) { OpenFileDialog dlg = new OpenFileDialog(); dlg.Filter = "All Files|*.*"; dlg.Multiselect = true; if ((bool)dlg.ShowDialog()) { foreach (FileInfo file in dlg.Files) { FileUpload upload = new FileUpload(this.Dispatcher, file); upload.StatusChanged += new EventHandler(upload_StatusChanged); upload.UploadProgressChanged += new ProgressChangedEvent(upload_UploadProgressChanged); //debug upload.PropertyChanged += new System.ComponentModel.PropertyChangedEventHandler(upload_Debug); Int32 ms = DateTime.Now.Millisecond; // is used to signal about error only once per files collection selected by user (file too big or number of files is too big) try { HtmlPage.Window.Invoke("newUploadCallback", upload.SessionId, upload.Name, upload.FileLength, ms, dlg.Files.Count()); } catch (Exception) { } files.Add(upload); } } }