Converti stringa base64 in immagine in C # su Windows Phone

Ho una stringa base64 e voglio convertirla in un’immagine e impostare la Sorgente di un controllo Image sul risultato.

Normalmente lo farei usando Image.FromStream , in questo modo:

 Image img; byte[] fileBytes = Convert.FromBase64String(imageString); using(MemoryStream ms = new MemoryStream()) { ms.Write(fileBytes, 0, fileBytes.Length); img = Image.FromStream(ms); } 

Tuttavia, il metodo Image.FromStream non esiste su Windows Phone e una ricerca casuale Image.FromStream solo risultati che dipendono da quel metodo.

Puoi usare un metodo come questo:

  public static BitmapImage base64image(string base64string) { byte[] fileBytes = Convert.FromBase64String(base64string); using (MemoryStream ms = new MemoryStream(fileBytes, 0, fileBytes.Length)) { ms.Write(fileBytes, 0, fileBytes.Length); BitmapImage bitmapImage = new BitmapImage(); bitmapImage.SetSource(ms); return bitmapImage; } } 

Aggiungi un’immagine al tuo XAML, ad esempio:

   

È quindi ansible impostare la fonte, in questo modo:

 myWonderfulImage.Source = base64image(yourBase64string);