2011-01-26 3 views
0

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

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» в поддерживаемый файл BitmapImage.

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

ТКС

ответ

1

Единственные форматы, поддерживаемые 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.

+0

Позор, его не поддерживается на самом деле (http://forums.create.msdn.com/forums/p/73618/449043.aspx#449043), и эта реализация не работает отлично ... I используя сервис от www.getfavicon.org ... –