public BookSearchResultPage(BookShelf bookshelf, AmazonBookSearch search, ObservableCollection <Book> books) { InitializeComponent(); SearchContext = search; InitList(bookshelf, books); }
async void Handle_SearchClicked(object sender, System.EventArgs e) { string keyword; AmazonBookSearch.SearchType searchType; if (bSearchTitle) { keyword = this.entryTitle.Text; searchType = AmazonBookSearch.SearchType.SearchBook_ByTitle; } else { keyword = this.entryAuthor.Text; searchType = AmazonBookSearch.SearchType.SearchBook_ByAuthor; } if (keyword == null || keyword.Length == 0) { await DisplayAlert("検索するには?", "1文字以上入力してください", "OK"); return; } cvLayer.IsVisible = frLayer.IsVisible = true; AmazonBookSearch search = new AmazonBookSearch(amazonKey); ObservableCollection <Book> books = new ObservableCollection <Book>(); bool result = await search.Search(searchType, keyword, books); if (!result) { cvLayer.IsVisible = frLayer.IsVisible = false; await DisplayAlert("検索に失敗", "しばらくしてから検索してください", "OK"); return; } else { if (books.Count == 0) { cvLayer.IsVisible = frLayer.IsVisible = false; await DisplayAlert("該当書籍なし", "検索ワードを変えてください", "OK"); return; } else { await Navigation.PushAsync(new BookSearchResultPage(this.bookShelf, search, books)); cvLayer.IsVisible = frLayer.IsVisible = false; return; } } }
async Task <bool> AmazonSearch(AmazonBookSearch search) { ObservableCollection <Book> books = new ObservableCollection <Book>(); bool ret = await search.ContinueSearch(books); if (ret) { addResultBook(books, ResultBookList); SearchResultVM.CheckBooks(books); } return(ret); }