// 删除选定的项目 private void RemoveListSelectedItems() { if (FileListUi.SelectedItems.Count <= 0) { return; } if (AppSettings.ListItemRemovePrompt) { var result = MessageBox.Show("你要删除选定的项目吗?", "删除所选项", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.No) { return; } } foreach (ListViewItem item in FileListUi.SelectedItems) { if (item.Tag == null) { item.Remove(); continue; } var vsItem = (VsItem)item.Tag; VsList.Remove(vsItem); item.Remove(); } RefreshFileListUi(); }
// 清空列表 private void ClearListAll() { if (VsList.Count() == 0 && FileListUi.Items.Count == 0) { return; } if (AppSettings.ListItemRemovePrompt) { var result = MessageBox.Show("你要清空列表吗?", "清空列表", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.No) { return; } } FileListUi.Items.Clear(); VsList.Clear(); RefreshFileListUi(); }
// 文件添加 private void FileListAdd(FileInfo file) { AppFileType fileType; if (VideoExts.Contains(file.Extension.ToString().ToLower())) { fileType = AppFileType.Video; } else if (SubExts.Contains(file.Extension.ToString().ToLower())) { fileType = AppFileType.Sub; } else { return; } var vsItem = new VsItem(); if (fileType == AppFileType.Video) { if (VsList.Exists(o => o.Video == file.FullName)) { return; // 重名排除 } vsItem.Video = file.FullName; } else if (fileType == AppFileType.Sub) { if (VsList.Exists(o => o.Sub == file.FullName)) { return; } vsItem.Sub = file.FullName; } vsItem.Status = VsStatus.Unmatched; VsList.Add(vsItem); }