不能隐式转换类型'byte[]'& # 39; System.Windows.Controls.Imag
本文关键字:System Imag Controls Windows byte 转换 类型 不能 | 更新日期: 2023-09-27 18:12:38
好吧,有无数从字节到字符串等,但我根本找不到任何关于如何将资源文件visual studio转换成字节[]的东西,无论我做什么,都可以转换成正常的图像,所以我实际上可以在我的c#代码中使用它?
您可以使用值转换器来完成此操作-
public class InMemoryImageValueConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
var image = new BitmapImage();
var memoryStream = new MemoryStream((byte[])value);
image.SetSource(memoryStream);
return image;
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return null;
}
}
改编自https://github.com/slodge/MvvmCross/blob/v3/Plugins/Cirrious/PictureChooser/Cirrious.MvvmCross.Plugins.PictureChooser.WindowsPhone/MvxInMemoryImageValueConverter.cs#L17
那么你可以在图像控件中使用
<Image Source="{Binding TheBytes, Converter={StaticResource InMemoryImage}}" />
如果您的图像是应用程序的资源,那么您可以按以下操作
Uri uriR = new Uri("/WP7SampleProject3;component/images/appbar.feature.email.rest.png", UriKind.Relative);
BitmapImage imgSourceR = new BitmapImage(uriR);
this.imageR.Source = imgSourceR;
- WP7使用图像:内容vs资源构建操作