Sto usando ImageTools da codeplex per salvare una tela come png; tuttavia, ho avuto lo stesso problema quando stavo usando un writeableBitmap.SaveJpeg()
. Pertanto, il problema non riguarda il tipo di immagine, ma piuttosto il modo in cui sto salvando o caricando in IsolatedStorage
.Salvare e caricare l'immagine su IsolatedStorage Richiede risparmio due volte
Quando si salva l'immagine premendo un pulsante di salvataggio il file esiste, ma quando carico l'immagine non viene visualizzato nulla. Se salvi l'immagine due volte, l'immagine viene caricata e visualizzata correttamente.
Di seguito è riportato il mio codice.
salvataggio file:
ExtendedImage myImage = myCanvas.ToImage();
using (var isoStore = IsolatedStorageFile.GetUserStoreForApplication())
{
if (isoStore.FileExists("image.png"))
isoStore.DeleteFile("image.png");
using (var fileStream = isoStore.CreateFile("image.png"))
{
myImage.WriteToStream(fileStream, "image.png");
fileStream.Close();
}
}
Caricamento di file
BitmapImage bi = new BitmapImage();
using (var isoStore = IsolatedStorageFile.GetUserStoreForApplication())
{
if (isoStore.FileExists("image.png"))
{
using (var fileStream = isoStore.OpenFile("image.png", FileMode.Open))
{
bi.SetSource(fileStream);
this.img.Height = bi.PixelHeight;
this.img.Width = bi.PixelWidth;
this.img.Source = bi;
}
}
}
Ho appena provato il codice e sembra funzionare bene, sia sull'emulatore che sul dispositivo (Nokia Lumia 920) ... –
Dispari. Ho provato su entrambi emulatore e dispositivo (L920, Visual Studio 2012 targeting per Windows Phone 8.0) e l'errore è persistente su entrambi. Grazie per avermi fatto sapere che funziona, tuttavia. –