5

我有一个 base64 字符串,我想将其转换为图像并将图像控件的源设置为结果。

通常我会使用 来做到这一点Image.FromStream,类似于:

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

但是,该Image.FromStream方法在 Windows Phone 上不存在,随便搜索只会找到依赖于该方法的结果。

4

1 回答 1

11

您可以使用这样的方法:

    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;
        }
    }

将图像添加到 XAML,例如:

    <Image x:Name="myWonderfulImage" />

然后您可以设置源,如下所示:

myWonderfulImage.Source = base64image(yourBase64string);
于 2013-01-26T16:34:29.697 回答