private void _RemoveDirectory(object obj) { if (m_directoryMonitor == null) { return; } if (obj is IList <object> ) { var selectedItems = obj as IList <object>; if (selectedItems == null) { return; } for (int i = selectedItems.Count - 1; i >= 0; i--) { if (selectedItems[i] is Filer.DirectoryMonitor.Directory) { Filer.DirectoryMonitor.Directory directory = selectedItems[i] as Filer.DirectoryMonitor.Directory; if (directory == null) { return; } m_directoryMonitor.RemoveMonitoredDirectory(directory.Path); } } } }