Momentan arbeite ich an einem Ultraschall-Scan-Projekt, das die fortlaufenden Bilder anzeigt, die von einer Sonde stammen. Dazu schreibe ich den folgenden Code.Die beste Methode zum Anzeigen von Bildern in WPF
XAML:
<Image Name="imgScan" DataContext="{Binding}" Source="{Binding Path=prescanImage,Converter={StaticResource imgConverter}}" />
C# Aufgabe:
Bitmap myImage = GetMeImage();
imageMem = new MemoryStream();
myImage .Save(imageMem, ImageFormat.Png);
imgScan.DataContext = new { prescanImage = imageMem.ToArray() };
Converter:
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value != null && value is byte[])
{
byte[] ByteArray = value as byte[];
BitmapImage bmp = new BitmapImage();
bmp.BeginInit();
bmp.StreamSource = new MemoryStream(ByteArray);
bmp.EndInit();
return bmp;
}
return null;
}
Diese Methode mich viel (Performance) kostet, ist es eine bessere Art und Weise zu TU es??
Ist die Convert-Methode selbst sehr kostenaufwendig oder wird sie nur zu oft abgefragt? Ich bin gespannt, ob ein benutzerdefiniertes Steuerelement, um dies zu handhaben, der bessere Ansatz wäre (da es ein konstanter Strom von Bildern ist). –
Ich würde vorschlagen, Custome/Third Party Controls ... oder können wir die Bitmap-Bilder streamen –