private void OnFindComplete(object sender, EventArgs e) { _searchOver = false; SetProgressBar(0); ChangeFileNowName(string.Empty); SearchMenuVisible(false); TimerPaint.Stop(); SetTimerLabel("00:00:00"); SetFileNowLabel("Расположение файла"); SetTextStartBtn("Поиск"); if (_search.Files.Where(f => f.IsMatch).Count() == 0) { MessageBox.Show("В файлах совпадений не найдено", "Поиск закончен", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show($"Найдено совпадений в файлах: {_search.Files.Where(f => f.IsMatch).Count()}", "Поиск закончен", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
private void FindStartStopBtn_Click(object sender, EventArgs e) { if (!_searchOver && keyWordTB.Text != "" && fileNameMaskTB.Text != "" && PathTB.Text != "Выберите папку...") { if (_search != null) { treeFolders.Nodes.Clear(); } TimerPaint.Start(); _searchOver = true; searcMenu.Visible = true; FindStartStopBtn.Text = "Стоп"; _search = new SearchResults(_folderPath, fileNameMaskTB.Text, ref treeFolders, (object _sender, EventArgs _e) => { MyFile mf = _sender as MyFile; SetFilesCounterLabel(FilesCount()); mf.BackgroundColor = Color.Yellow; ChangeFileNowName(GetNormalFileName(mf.FullName)); Thread.Sleep(50); }, (object _sender, ReadFileEventArgs _e) => { MyFile mf = _sender as MyFile; if (_e.MatchWasFound) { Task.Run(() => { MessageBox.Show(mf.FullName, "Найдено совпадение!", MessageBoxButtons.OK, MessageBoxIcon.Information); }); mf.BackgroundColor = Color.Green; } else { mf.BackgroundColor = Color.Red; } SetProgressBar(); Thread.Sleep(50); }); progressSearch.Maximum = _search.Files.Count; _search.FindComplete += OnFindComplete; _search.FindMatches(keyWordTB.Text.ToLower()); } else if (keyWordTB.Text == "" || fileNameMaskTB.Text == "") { MessageBox.Show("Необходимо ввести имя файла и ключевое слово!!!", "WARNING", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else if (PathTB.Text == "Выберите папку...") { MessageBox.Show("Необходимо выбрать папку!!!", "WARNING", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { TimerPaint.Stop(); progressSearch.Value = 0; _search.StopFind(); _searchOver = false; searcMenu.Visible = false; FindStartStopBtn.Text = "Поиск"; } }