0
내 WPF 폼에 동적 이미지를 추가하려고합니다. 나는이 같은 이미지를 추가했습니다 :WPF의 이벤트를 통해 동적 이미지 가져 오기
<Image Height="212" HorizontalAlignment="Left" Margin="12,167,0,0"
Name="picture_scan" Stretch="Fill" VerticalAlignment="Top" Width="227"
Source="{Binding FingerprintSource}" />
소스 내 서비스 클래스에 다음 코드로 연결 :
public BitmapSource FingerprintSource
{
get { return fingerprintScan.WpfImageSource; }
}
WpfImageSource
은 BitmapSource
이다. 제가 말했듯이, 이미지는 역동적입니다. 내 지문 판독기에서 이벤트를 통해, 다음 코드가 호출됩니다 :
private void HandleFingerprintObtainedEvent(Fingerprint fingerprint, FingerprintImage fingerprintImage)
{
Debug.WriteLine("New fingerprint found!");
fingerprintScan = fingerprintImage;
}
내가 프로그램을 실행하고 독자에 내 손가락을 눌러
는 새로운 지문 이미지가 발견된다. 값fingerprintScan
이 변경됩니다. 그러나 문제는 스캐너 위에 손가락을 넣기 전후에 비트 맵이 비어 있습니다 (흰색?). 내가 도대체 뭘 잘못하고있는 겁니까? 이벤트 등을 확인하는 것과 같은 데이터 바인딩 이외에 더 많은 작업을 수행해야합니까? 데이터 바인딩 소스가
BitmapImage
대신
BitmapSource
일 때 문제가됩니까?
확인을, 그래서 예로부터 코드를 해봤 내'나는 새로운 이미지를 삽입 할 때 RaisePropertyChanged'이 발사되고있다. WPF 바인딩이 변경된 Fingerprintscan임을 알리고 어떻게하면 WPF에서 이미지를 새로 고칠 수 있습니까? – Joetjah
먼저 WPF 윈도우/페이지에 DataContext가 올바르게 설정되어 있는지 확인하십시오. 이벤트를 실행하자마자 바인딩이 이벤트를 받으면 자동으로 값 (이 경우 이미지)을 업데이트합니다. 이것이 일어나지 않는다면 출력 창을보고 바인딩 문제를 확인하십시오. – JoanComasFdz
DataContext가 올바르게 설정되었습니다. ComboBoxes 및 ListViews에 다른 값을 사용하고 있습니다. 스캐너에서 손가락을 눌러 이벤트가 트리거되고 이미지가 새로 고침 (교체)됩니다. 그러나 그런 다음, 내 그림은 새로 고쳐지지 않습니다. 아마도이 오류는 RaisePropertyChanged ("fingerprintScan"); 논리적으로 어떤 String 값을 주어야합니까? – Joetjah