2017-01-09 14 views
0

Я использую библиотеку AForge.NET для захвата USB-камеры, Мне нужна эта часть кода, которая должна быть в DLL. Для каждого фрейма библиотека AForge.NEt создает событие с растровым изображением, я пытаюсь вывести это событие в основное окно WPF, для этого я создал простое событие в библиотеке DLL, поэтому основное приложение может инициировать это событие , , но я получаю «вызывающий поток не может получить доступ к этому объекту, потому что ему принадлежит другой поток». Я используюC# WPF - захват камеры из DLL

Dispatcher.Invoke(() => 
    { 
     imgCamera.Source = newFrame; 
    }); 

еще одно сообщение. Есть идеи?

+0

является «imgCamera» или «newFrame», принадлежащим другому потоку? вы должны клонировать 'newFrame' перед тем, как назначить его другому объекту. –

+0

Я попробовал. это не помогло. – Kulpemovitz

+0

Я предполагаю, что третий поток, который не вызывается, принадлежит 'imgCamera' или' newFrame'. Попробуйте установить контрольную точку до и проверить потоки. –

ответ

0

Я нашел решение, потратив на это столько времени. как раз делаем -> новыйFrame.Freeze();

занимает все проблемы с резьбой

 Смежные вопросы

  • Нет связанных вопросов^_^