De façon synchrone télécharger une image à partir de l'URL

Je veux juste obtenir un BitmapImage à partir d'une URL internet, mais ma fonction ne semble pas fonctionner correctement, il ne m'a fait une petite partie de l'image. Je sais WebResponse est de travail asynchrone et c'est certainement pourquoi j'ai ce problème, mais comment puis-je le faire de manière synchrone?

    internal static BitmapImage GetImageFromUrl(string url)
    {
        Uri urlUri = new Uri(url);
        WebRequest webRequest = WebRequest.CreateDefault(urlUri);
        webRequest.ContentType = "image/jpeg";
        WebResponse webResponse = webRequest.GetResponse();

        BitmapImage image = new BitmapImage();
        image.BeginInit();
        image.StreamSource = webResponse.GetResponseStream();
        image.EndInit();

        return image;
    }

OriginalL'auteur Karnalta | 2010-09-07