private FileSystemWatcher _fsw; init() _fsw.Path = path; _fsw.Filter = "*.*"; // only filename, no path _fsw.EnableRaisingEvents = true; _fsw = new System.IO.FileSystemWatcher(); _fsw.Changed += new System.IO.FileSystemEventHandler(this.FSW_Changed); _fsw.Created += new System.IO.FileSystemEventHandler(this.FSW_Created); _fsw.Deleted += new System.IO.FileSystemEventHandler(this.FSW_Deleted); _fsw.Renamed += new System.IO.RenamedEventHandler(this.FSW_Renamed); } void FSW_Renamed(object sender, RenamedEventArgs e) { filewatch(); } void FSW_Deleted(object sender, FileSystemEventArgs e) { filewatch(); } void FSW_Created(object sender, FileSystemEventArgs e) { filewatch(); } void FSW_Changed(object sender, FileSystemEventArgs e) { filewatch(); } delegate void showFilesInListViewCallback(string actualPath); private void filewatch() { Application.Current.Dispatcher.Invoke(new Action(() => { showFilesInListView(_actualPath); })); } private void showFilesInListView(String path) { // Aktion }