在RequestEnd上填充ListBox



在Windows Phone 8上工作。

遇到了一个问题,我几年前不知怎么解决了,但记不起来了。

GetNews();
InitializeComponent();
private void GetNews()
{
    HttpWebRequest request = HttpWebRequest.CreateHttp(GS.BACKEND_HOST + "something");
    request.BeginGetResponse(new AsyncCallback(HandleResponseNews), request);
}
private void HandleResponseNews(IAsyncResult result)
{
    HttpWebRequest request = result.AsyncState as HttpWebRequest;
    if (request != null)
    {
        using (WebResponse response = request.EndGetResponse(result))
        {
            using (StreamReader reader = new StreamReader(response.GetResponseStream()))
            {
                string JSON = reader.ReadToEnd();
                NewsList = JsonConvert.DeserializeObject<News>(JSON) as News;
            }
        }
    }
}

我需要用NewsList项目填充我的列表框。但我只能在NewsList中填写了请求响应后才能到达。

我需要某种触发器。。。

找到的解决方案:

 Deployment.Current.Dispatcher.BeginInvoke(() => 
 { 
      foreach (Article article in NewsList.Result.Articles) 
      { 
      NewsListBox.Items.Add(article.Title); 
      } 
  }); 

最新更新