locked
Image из Isolated Storаge в WebBrowser RRS feed

  • Вопрос

  • Есть задача: загрузка картинки по ссылке и сохранение в хранилище. Далее по требованию загрузить ее и отобразить в контроле WebBrowser. 
    Вот это код для сохранения картинки в хранилище:

    private void saveclick(object sender, RoutedEventArgs e)
    		{
    			CreateOfflinePost("123", imageUri);
    		}
    private void CreateOfflinePost(string id, Uri uri)
    		{
    			IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication();
    			if( !store.DirectoryExists(id) )
    			{
    				store.CreateDirectory(id);
    			}
    			BitmapImage img = new BitmapImage(uri) { CreateOptions = BitmapCreateOptions.None };
    			img.ImageOpened += (s, e) =>
    					{
    						WriteableBitmap bitmap = new WriteableBitmap((BitmapImage)s);
    
    						using( var stream = store.OpenFile(id + "\\" + id + ".png", FileMode.Create) )
    						{
    							Extensions.SaveJpeg(bitmap, stream,
    								bitmap.PixelWidth, bitmap.PixelHeight, 0, 100);
    						}
    						MessageBox.Show("Saved!");
    					};
    		}

    Вот обработчик события нажатия клавиши загрузки этой картинки в WebBrowser:

    private void loadclick(object sender, RoutedEventArgs e)
    		{
    			IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication();
    			var a = store.GetFileNames();
    			browser.Base = "123";
    			browser.Navigate(new Uri("123.png", UriKind.Relative));
    		}

    Вот что отображается:

    Решение взял отсюда: http://social.msdn.microsoft.com/Forums/en-US/wpdevelop/thread/662e82a1-1f23-48e8-9de8-953fb43f618e

    Что же не так в коде? Уже день бьюсь, не могу понять :(


    14 апреля 2013 г. 14:43

Ответы

  • Понял через минуту, может кому интересно. 
    Надо сохранять не в формате png, а в jpg.
    • Помечено в качестве ответа welikoiwanenko 14 апреля 2013 г. 14:50
    14 апреля 2013 г. 14:50