У меня есть панель, содержащая активный компонент 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);
исключение: операции Cross-нить не действует: Control «» доступ из потока, отличного от резьбы она была создана.
Показанный код представляет собой простую версию действующего кода, в фактическом коде пользователь может создать камеру на разных формах, и все эти панели камер должны находиться в той же самой теме – Jeffnl
А я вижу, в любом случае мое решение должно работать для вас просто отлично :) – gzaxx
Я все еще получаю то же исключение – Jeffnl