private void btnDeleteNonLibraryFile_Click(object sender, RoutedEventArgs e) { //get the file that was selected Button btnDeleteNonLibraryFile = sender as Button; NonLibraryFile nlf = btnDeleteNonLibraryFile.DataContext as NonLibraryFile; //delete file FileInfo fi = new FileInfo(nlf.FullName.Value); fi.Delete(); //clean up folder again RootFolder.CleanUp(fi.Directory.FullName, new List <String>(), Options.RootFolderFileExceptions.ToArray(), Options.RootFolderDirectoryExceptions.ToArray(), nlf.IsInRootFolder); //remove file from data grid ItemsSource.Remove(nlf); if (ItemsSource.Count == 0) { DialogResult = true; } }
private void btnAddRootFolderFileException_Click(object sender, RoutedEventArgs e) { Button btnAddRootFolderFileException = sender as Button; NonLibraryFile nlf = btnAddRootFolderFileException.DataContext as NonLibraryFile; Options.RootFolderFileExceptions.Add(nlf.Name.Value); Options.Save(); NonLibraryFile[] matches = ItemsSource.Where(p => p.Name == nlf.Name).ToArray(); foreach (NonLibraryFile nonLibraryFile in matches) { FileInfo fi = new FileInfo(nonLibraryFile.FullName.Value); RootFolder.CleanUp(fi.Directory.FullName, new List <String>(), Options.RootFolderFileExceptions.ToArray(), Options.RootFolderDirectoryExceptions.ToArray(), nonLibraryFile.IsInRootFolder); ItemsSource.Remove(nonLibraryFile); } if (ItemsSource.Count == 0) { DialogResult = true; } }