0
我有一個面板,其中包含一個活動的x組件來顯示相機流。這是外部代碼。此面板只能運行相機驅動程序的STA線程。添加面板以形成不同的線程
如何在另一個線程上創建的窗體上顯示此面板? 例如:
[STAThread]
public Main()
{
Panel display = new Panel();
Thread form = new Thread(()=>
{
Form displayForm = new Form();
displayForm.Show();
displayForm.Controls.Add(display);
});
form.Start();
CameraComponent axCamera = new CameraComponent(); //create new camera component active x component
display.Controls.Add(axCamera);
}
但是,這將引發的異常:display.Controls.Add(axCamera);
異常:跨線程操作無效:控制'從比它創建的線程以外的線程的訪問。
顯示的代碼是實際代碼的簡單版本,在實際代碼中用戶可以在不同的窗體上創建相機,並且所有這些相機面板必須位於同一線程上 – Jeffnl
啊我看到了,無論如何,我的解決方案應該可以工作因爲你只是好:) – gzaxx
我仍然得到同樣的異常 – Jeffnl