예제 #1
0
        public BookSearchResultPage(BookShelf bookshelf, AmazonBookSearch search, ObservableCollection <Book> books)
        {
            InitializeComponent();

            SearchContext = search;

            InitList(bookshelf, books);
        }
예제 #2
0
        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;
                }
            }
        }
예제 #3
0
        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);
        }