2017-01-09 4 views
0

私はAFカメラをキャプチャするためにAForge.NETライブラリを使用しています。 DLL上にこのコードが必要です。 フレームごとに、AForge.NEtライブラリはビットマップのイベントを作成します。このイベントをメインWPFウィンドウにバブルアップしようとしています。このため、DLLライブラリに単純なイベントを作成してメインアプリケーションがこのイベントを初期化できます。 しかし、私は "呼び出しスレッドは、別のスレッドが所有しているため、このオブジェクトにアクセスできません。" 私は使用していますC#WPF - DLLからのカメラキャプチャ

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

まだ同じメッセージです。何か案が?

+0

は、別のスレッドが所有する 'imgCamera'または' newFrame'ですか?別のオブジェクトに割り当てる前に 'newFrame'をクローンしてください –

+0

私はそれを試しました。それは助けになりませんでした。 – Kulpemovitz

+0

私の推測では、呼び出されていない3番目のスレッドが 'imgCamera'または' newFrame'を所有していると思います。前にブレークポイントを設定してスレッドをチェックしてください。 –

答えて

0

私は多くの時間を費やして解決策を見つけました。 just - > newFrame.Freeze();

すべてのスレッドの問題が発生します

関連する問題