从网页和节目中获取图像(Windows Phone)

时间:2012-12-18 03:19:39

标签: c# windows-phone-7 http

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

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

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

我假设它会像Parse网站那样>获取src字符串>加载字符串> 显示图像。但是真的想要一些关于如何做的帮助。

谢谢!

1 个答案:

答案 0 :(得分: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;
    }

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

这里LayoutRoot是主网格。你可以随意使用imageview或图片框。