По некоторым причинам я не могу удалить обработчик событий из FileSystemWatcher.
Это - то, что я имею
void Start()
{
ivFileSystemWatcher = new FileSystemWatcher();
ivFileSystemWatcher.Changed +=
new FileSystemEventHandler(ivFileSystemWatcher_Changed);
}
void Stop()
{
ivFileSystemWatcher.Changed -=
new FileSystemEventHandler(ivFileSystemWatcher_Changed);
ivFileSystemWatcher.Dispose();
}
Когда я звоню, запускаются, я начинаю получать события изменения, но когда я назову остановку, я ожидаю, что события остановятся, но они все еще повышаются.
Вы пробовали установить EnableRaisingEvents
на false
:
void Stop()
{
ivFileSystemWatcher.EnableRaisingEvents = false;
ivFileSystemWatcher.Changed -=
new FileSystemEventHandler(ivFileSystemWatcher_Changed);
ivFileSystemWatcher.Dispose();
}
Не видя остальной части вашего кода, я не уверен, что это лучшее место для Dispose ( )
...