Почему я не получаю уведомления о переименовании файлов из FileSystemWatcherC#

Место общения программистов C#
Anonymous
Почему я не получаю уведомления о переименовании файлов из FileSystemWatcher

Сообщение Anonymous »

У меня есть код, который отслеживает изменения в файловой системе и обновляет контейнер представлений файлов. По большей части все работает, пока вы не переименуете каталог. Я ожидал бы получить событие переименования для всех файлов и подпапок переименованного каталога, поскольку у них есть новые пути, но я получаю только одно сообщение о том, что родительский каталог изменил имена. Есть ли событие, которое я забыл, или флаг, который нужно установить? В настоящее время я занимаюсь переименованием каталога и перебираю свою коллекцию, чтобы обновить файлы до нового имени, но мне кажется, что вместо этого должно быть что-то для получения уведомлений для каждого файла.

Мои настройки:

FileSystemWatcher watcher = new FileSystemWatcher(item.Path);
watcher.EnableRaisingEvents = true;
watcher.Created += new System.IO.FileSystemEventHandler(OnMediaCreated);
watcher.Deleted += new System.IO.FileSystemEventHandler(OnMediaDeleted);
watcher.Changed += new System.IO.FileSystemEventHandler(OnMediaChanged);
watcher.Renamed += new System.IO.RenamedEventHandler(OnMediaRenamed);

Вернуться в «C#»