2017-09-11 2 views
0

Ich versuche, ein Bild in einem Image Steuerelement in einer WPF-Anwendung zu laden.WPF lädt ein BitmapImage programmatisch in ein Bild

Ich muss die Eingabe in einer Funktion und binden Sie es an die Image in einer anderen.

Dies funktioniert:

var b = new Binding { Source = (ImageSource)new ImageSourceConverter().ConvertFromString("D:/data/TestPattern.jpg") }; 
CameraFrame.SetBinding(Image.SourceProperty, b); 

Aber dies nicht:

BitmapImage bSource = new BitmapImage(new Uri("D:/data/TestPattern.jpg")); 
var b = new Binding { Source = (ImageSource)new ImageSourceConverter().ConvertFrom(bSource) }; 

CameraFrame.SetBinding(Image.SourceProperty, b); 

Warum ist das? Fehle ich etwas in der ConvertFrom Funktion?

Antwort

1

Warum setzen Sie die Eigenschaft Source nicht einfach auf BitmapImage?

CameraFrame.Source = new BitmapImage(new Uri("D:/data/TestPattern.jpg")); 
+0

Hallo, vielen Dank für Ihre Antwort. Ich setze das 'BitmapImage' in einen anderen Thread und rufe eine opencv DLL auf. Daher kann ich die Datei nicht verwenden. – anti

+0

Es ist ein Live-Kamera-Stream ... – anti

+0

Also? Mein Hauptpunkt ist; Warum versuchen Sie, eine Bindung zu erstellen, anstatt einfach die ImageSource-Eigenschaft auf ein Bild zu setzen? – mm8