public void NightGathersAndNowMyWatchBegins() { FileSystemWatcher.Filter = "*.*"; //foreach (var f in Files) //{ // if (FileSystemWatcher.Filter.Length > 0) // FileSystemWatcher.Filter += ","; // FileSystemWatcher.Filter += f.FileName; //} Trace.TraceInformation($"Starting directory watcher on directory '{FileSystemWatcher.Path}' with the following filter: '{FileSystemWatcher.Filter}'"); FileSystemWatcher.Changed += FileSystemWatcher_Changed; FileSystemWatcher.Deleted += FileSystemWatcher_Deleted; FileSystemWatcher.Renamed += FileSystemWatcher_Renamed; FileSystemWatcher.Created += FileSystemWatcher_Created; FileSystemWatcher.EnableRaisingEvents = true; _inst.IssueAllOnPropertyChanged(); }
public WatchedDirectoryVM(WpfApplication app, CgbAppInstanceVM inst, string directoryToWatch) { _app = app; _inst = inst; _dispatcher = System.Windows.Threading.Dispatcher.CurrentDispatcher; Directory = directoryToWatch; FileSystemWatcher = new FileSystemWatcher { Path = Directory, // Which kinds of changes to watch for (strangely enough, without Security, no change-events, WTF?!) NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite | NotifyFilters.FileName | NotifyFilters.Attributes | NotifyFilters.CreationTime | NotifyFilters.Security | NotifyFilters.Size, // Files to be watched will be set later Filter = "TBD" }; Files = new ObservableCollection <WatchedFileVM>(); _inst.IssueAllOnPropertyChanged(); }