Загрузка .ico из Интернета и конвертируйте в Bitmapsource

StackOverflow https://stackoverflow.com/questions/4807124

Вопрос

Я пытаюсь загрузить файл типа .ICO из Интернета и использовать его в качестве изображения в моем Windows Phone. Но я получаю ошибку при попытке установить источник растрового расставаемости. Вот мой код:

WebClient client = new WebClient(); 
client.OpenReadCompleted += (s, e) => { 
    if (e.Cancelled) return; 
    if (null != e.Error) throw e.Error; 

    BitmapImage image = new BitmapImage(); 
    image.SetSource(e.Result); 
    this.Favicon = image; 
};

client.OpenReadAsync(new Uri(@"http://mysite/myimage.ico", UriKind.RelativeOrAbsolute));

Поддерживает ли Bitmapimage "ICO" файлы? Как преобразовать «ICO» в поддерживаемый растровый файл.

Решение должно работать на Windows Phone 7.

Тк

Это было полезно?

Решение

Единственные форматы, поддерживаемые BitmapImage кажется, PNG и JPG.

Не полностью указано здесь, но подразумевается комментариями: http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.bitmapimage(vs.95).aspx

Реализация Silverlight обработки .ico здесь:http://blogs.msdn.com/b/jstegman/archive/2009/09/13/silverlight-ico-icon-decoder-parser.aspx

Возможно, вам придется изменить его, чтобы быть совместимым с версией Silverlight на Windows Phone 7.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top