از کنترل Image خود wpf به جای پیکچرباکس استفاده کنید. متد GetCaptureImageBuffer عکس را به صورت bitmap میده که میتونید با یک تبدیل ذر کنترل نمایش بدید. متد را به اینصورت اصلاح کنید:
private void DrawCapturedImages(UFScanner scanner, System.Windows.Controls.Image p)
{
try
{
// 1. DrawCaptureImageBuffer
// Scanner.SaveCaptureImageBufferToBMP("C:\\image.bmp ");
//Scanner.DrawCaptureImageBuffer(g, rect, cbDetectCore.IsChecked.Value);
// 2. GetCaptureImageBuffer
Bitmap bitmap;
int resolution;
scanner.GetCaptureImageBuffer(out bitmap, out resolution);
MemoryStream stream = new MemoryStream();
bitmap.Save(stream, ImageFormat.Bmp);
stream.Seek(0, SeekOrigin.Begin);
BitmapImage bitmapImage = new BitmapImage();
bitmapImage.BeginInit();
bitmapImage.CacheOption = BitmapCacheOption.OnLoad;
bitmapImage.StreamSource = stream;
bitmapImage.EndInit();
p.Source = bitmapImage;
}
finally
{
}
}