Я создаю список FileSystemWatchers.
List<ExtSystemFileWatcher> fswMonitors = new List<FileSystemWatcher> ();
Количество их в списке является динамическим в зависимости от пользователя. Это делается из INI-файла, и создается массив объектов Monitor из моего собственного класса Monitor. У класса просто есть переменные, такие как число Монтиора, путь к монитору, Ext для поиска и т. Д.
if (iNumberMonitors > 0)
{
obMonitors = ReadMonitors(iNumberMonitors);
for (int iCounter = 0; iCounter < iNumberMonitors; iCounter++)
{
FileSystemWatcher fswCurrent = new FileSystemWatcher();
fswCurrent.Path = obMonitors[iCounter].strMonPath;
fswCurrent.EnableRaisingEvents = true;
fswCurrent.NotifyFilter = NotifyFilters.FileName;
fswCurrent.Filter = "*." + obMonitors[iCounter].strMonExt;
fswCurrent.Deleted += OnDelete;
fswMonitors.Add(fswCurrent);
}
}
В методе OnDelete, который вызывает каждый FileSystemWatcher, если происходит событие Delete, мне нужно знать, какой из FileSystemWatchers вызывает его.
У меня вопрос: как узнать, какой FileSystemMonitor в списке вызывает метод?