Hallo Ich versuche, einen Konverter zu erstellen, um meine Bilder in einer Datenbank zu konvertieren, Datentyp „Varbinary (Max)“ mein Datagrid in WPF zu füllen, aber ich habe zwei Fehler, den Sie i zeigen den Converter:Konverter binär zu Bild WPF;
public class BinaryToImageConverter : IValueConverter
{
public object Convert(object value, System.Type targetType, object parameter,
System.Globalization.CultureInfo culture)
{
Binary binaryData = value;// here there is the first error .How convert BinaryData to Object??
if (binaryData == null) {
return null;
}
byte[] buffer = binaryData.ToArray();
if (buffer.Length == 0) {
return null;
}
BitmapImage res = new BitmapImage();
res.BeginInit();
res.StreamSource = new System.IO.MemoryStream(buffer);
res.EndInit();
return res;
}
public object ConvertBack(object value, System.Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
BitmapImage source = value;//How convert Bitmap to Object?
if (source == null) {
return null;
}
if ((source.StreamSource != null) && source.StreamSource.Length > 0) {
return GetBytesFromStream(source.StreamSource);
}
return null;
}
private Binary GetBytesFromStream(System.IO.Stream stream)
{
stream.Position = 0;
byte[] res = new byte[stream.Length + 1];
using (System.IO.BinaryReader reader = new System.IO.BinaryReader(stream)) {
reader.Read(res, 0, (int)stream.Length);
}
return new Binary(res);
}
}
Cab Sie beraten mich, wenn es richtig ist oder es gibt einen besseren Weg, dies zu tun? Danke für Ihre Hilfe. einen guten Tag
Können Sie angeben, was die Fehler sind? – ChrisF