public Image Base64ToImage(string base64String) { // Convert Base64 String to byte[] byte[] imageBytes = Convert.FromBase64String(base64String); MemoryStream ms = new MemoryStream(imageBytes,imageBytes.Length); // Convert byte[] to Image ms.Write(imageBytes,imageBytes.Length); System.Drawing.Image image = System.Drawing.Image.FromStream(ms,true); return image; }
我想把byte []转换成image,但是在Silverlight中不支持System.Drawing.Image。任何选择?
解决方法
您需要创建一个ImageSource并将其分配给Image控件或使用ImageBrush在背景上设置。 BitmapImage位于System.Windows.Media.Imaging命名空间中。
byte[] imageBytes = Convert.FromBase64String(base64String); using (MemoryStream ms = new MemoryStream(imageBytes,imageBytes.Length)) { BitmapImage im = new BitmapImage(); im.SetSource(ms); this.imageControl.source = im; }
或ImageBrush
byte[] imageBytes = Convert.FromBase64String(base64String); using (MemoryStream ms = new MemoryStream(imageBytes,imageBytes.Length)) { BitmapImage im = new BitmapImage(); im.SetSource(ms); imageBrush.ImageSource = im; this.BoxBorder.Background = imageBrush; }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。