public FileTransferDialog() { instanceCount++; if (instanceCount > 1) { this.Dispose(); return; } Instance = this; InitializeComponent(); InitUI(); Properties.Settings.Default.PropertyChanged += new PropertyChangedEventHandler(Default_PropertyChanged); fileTransferList = new FileTransferControlList(); SetForeground += new EventHandler(FileTransferDialog_SetForeground); }
private void ClearTransferList() { FileTransferControlList remList = new FileTransferControlList(); foreach (FileTransferControl control in fileTransferList) { if ((control.Status & FileTransfer.Status.Completed) != 0) { remList.Add(control); } } fileTransferList.RemoveAll(new Predicate <FileTransferControl>(delegate(FileTransferControl item) { return(remList.Contains(item)); })); // Dispose all controls removed from the list. for (int index = 0; index < remList.Count; index++) { remList[index].Dispose(); } }