Exemplo n.º 1
0
        private void ShowSearchResult(SimpleLineSearchResult searchResult)
        {
            try
            {
                dg_SearchResult.Rows.Clear();
                dg_SearchResult.CellClick -= dg_SearchResult_CellClick;
            }
            catch { }

            var source = new BindingSource();

            source.DataSource = searchResult.items;
            dg_SearchResult.RowTemplate.Height    = 130;
            dg_SearchResult.DataSource            = source;
            dg_SearchResult.Columns[0].Name       = "dg_Search_Col_Id";
            dg_SearchResult.Columns[0].HeaderText = "Id";

            dg_SearchResult.Columns[1].Name       = "dg_Search_Col_Title";
            dg_SearchResult.Columns[1].HeaderText = "Title";
            dg_SearchResult.Columns[1].Width      = 200;

            dg_SearchResult.Columns[2].Name       = "dg_Search_Col_Author";
            dg_SearchResult.Columns[2].HeaderText = "Author";

            dg_SearchResult.Columns[3].Name       = "dg_Search_Col_Icon";
            dg_SearchResult.Columns[3].HeaderText = "Icon";
            dg_SearchResult.Columns[3].Width      = 130;

            dg_SearchResult.Columns[4].Name       = "dg_Search_Col_Check";
            dg_SearchResult.Columns[4].HeaderText = "我要這個";
            dg_SearchResult.Columns[4].Width      = 130;

            dg_SearchResult.CellClick += dg_SearchResult_CellClick;
            txt_Page.Text              = $"{_nowSearchPage + 1}/{_totalSearchPage}";

            if (_sIds != null && _sIds.Any())
            {
                foreach (DataGridViewRow row in dg_SearchResult.Rows)
                {
                    if (_sIds.Contains(row.Cells["dg_Search_Col_Id"].Value.ToString()))
                    {
                        row.Cells["dg_Search_Col_Check"].Value = true;
                    }
                }
            }
        }
Exemplo n.º 2
0
        public SimpleLineSearchResult SearchLineSticker(string keyWord, int searchLimit, int searchSkip)
        {
            var apiUrl = _searchApi
                         .Replace("@KEYWORD@", HttpUtility.UrlEncode(keyWord, System.Text.Encoding.UTF8))
                         .Replace("@PAGESETS@", (searchSkip * searchLimit).ToString())
                         .Replace("@SEARCHLIMIT@", searchLimit.ToString());

            var client = new HttpClient();

            client.DefaultRequestHeaders.AcceptLanguage.Add(new System.Net.Http.Headers.StringWithQualityHeaderValue("zh-TW"));

            var searchResponse = client.GetAsync(apiUrl).Result;
            var returnResult   = new SimpleLineSearchResult();

            if (true == searchResponse.IsSuccessStatusCode)
            {
                var searchResult = JsonConvert.DeserializeObject <LineSearchResult>(searchResponse.Content.ReadAsStringAsync().Result);
                if (searchResult.totalCount > 0)
                {
                    returnResult.totalCount = searchResult.totalCount;
                    returnResult.items      = searchResult
                                              .items
                                              .Where(r => r.type.Equals("STICKER"))
                                              .Select(r => new SimpleItem
                    {
                        id     = r.id,
                        title  = r.title,
                        author = r.authorName,
                        icon   = ConvertImgUrlToImage(r.listIcon.src),
                        check  = false,
                    })
                                              .OrderBy(r => Convert.ToInt32(r.id))
                                              .ToList();

                    return(returnResult);
                }
            }

            return(null);
        }