0

我在从网站获取图像并在 Windows Phone 上显示时遇到了一些麻烦。图片链接每天都在变化(http://apod.nasa.gov/apod/astropix.html),但网站链接是一样的。

我见过很多人使用 HTMLAgility 包,但我认为我不能将它用于 Windows Phone。

如何从网页下载图像并将其显示在 imageview/picturebox 中?

我假设它会像 Parse Website > Get src string > load string > load image > show image。但真的很想得到一些关于如何做的帮助。

谢谢!

4

1 回答 1

1

嗨,这是一个帮助的代码块。我还没有遵循写下来的最佳实践:

    void ImageDownloader() 
    {
        WebClient client = new WebClient();
        client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(client_DownloadStringCompleted);
        client.DownloadStringAsync(new Uri("http://apod.nasa.gov/apod/astropix.html"));

    }

    void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
    {
        string str = e.Result.Remove(0,(e.Result.IndexOf("SRC=")+5));
        str = "http://apod.nasa.gov/apod/"+str.Substring(0, (str.IndexOf(".jpg")+4));
        ImageBrush imb = new ImageBrush();
        imb.ImageSource = new BitmapImage(new Uri(str));
        LayoutRoot.Background = imb;
    }

Home 字符串“http://apod.nasa.gov/apod/”保持不变。

这里 LayoutRoot 是主网格。您可以根据自己的方便使用图像视图或图片框。

于 2012-12-18T06:11:05.743 回答