private void New_Book_Button_Click(object sender, RoutedEventArgs args) { BookWindow bookWindow = new BookWindow { Book = new Book(), BookService = BookService, AuthorService = AuthorService, BookCounter = BookCounter, BookArranger = BookArranger }; BookDtoConverter dtoConverter = new BookDtoConverter { BookCounter = BookCounter, BookArranger = BookArranger }; bookWindow.ShowDialog(); if (bookWindow.BookIsSaved) { ((IList <BookDto>)allBooksDataGrid.ItemsSource).Add(dtoConverter.ConvertBook(bookWindow.Book)); allBooksDataGrid.Items.Refresh(); } }
private void Search() { var ratingFromStr = searchByRatingFrom.Text; var ratingToStr = searchByRatingTo.Text; var title = searchByTitle.Text; var section = searchBySection.Text; var author = (Author)searchByAuthor.SelectedItem; float ratingFrom; float ratingTo; IList <Book> temp; ISet <BookDto> result = new HashSet <BookDto>(); BookDtoConverter converter = new BookDtoConverter { BookCounter = BookCounter, BookArranger = BookArranger }; if (ratingFromStr.Length != 0 && ratingToStr.Length != 0) { if (!float.TryParse(ratingFromStr, out ratingFrom) || !float.TryParse(ratingToStr, out ratingTo)) { MessageBox.Show("Enter the valid value of rating"); return; } temp = BookService.FindByRating(ratingFrom, ratingTo); foreach (var book in temp) { result.Add(converter.ConvertBook(book)); } } if (!(author is null)) { foreach (var book in author.Books) { result.Add(converter.ConvertBook(book)); } } temp = BookService.FindByTitle(title); foreach (var book in temp) { result.Add(converter.ConvertBook(book)); } if (section.Length != 0 && !section.Equals("None")) { temp = BookService.FindBySection(BookUtils.ParseSection(section)); foreach (var book in temp) { result.Add(converter.ConvertBook(book)); } } searchResultGrid.ItemsSource = result; searchResultGrid.Items.Refresh(); searchByAuthor.SelectedItem = null; }