public void StartFindFiles() { var findForm = new FindForm(CurrentField.OpenedElement.Path, this); findForm.ShowDialog(); }
public void FindFiles(string fileName, string searchPath, FindForm findForm) { if (!Directory.Exists(searchPath) || String.IsNullOrEmpty(fileName)) return; string directoryName = Path.GetFileName(searchPath); if(directoryName != null && directoryName.Contains(fileName)) findForm.AddResult(searchPath, fileName, true); var currentDirectory = new DirectoryInfo(searchPath); try { foreach (var file in currentDirectory.GetFiles()) if (file.Name.Contains(fileName)) findForm.AddResult(searchPath + @"\" + file.Name, fileName, false); } catch (Exception) { //Пропустити пошук файлу у цій директорії } try { foreach (var directory in currentDirectory.GetDirectories()) FindFiles(fileName, directory.FullName, findForm); } catch (Exception) { //Пропустити папки файлів у цій директорії } }