Jestem początkującym do WPF i mam kilka pytań na temat integracji WPF i Windows Forms.WPF z Windows Forms - STAThread
Mam istniejącą aplikację Visual C# Windows Forms. Chciałbym go zintegrować z oknem WPF, które można wyświetlić po kliknięciu przycisku. Nie było to możliwe, ponieważ WPF spodziewa się, że wątek wywołujący będzie STAThread i domyślnie WinForm zakłada, że wątek jest plikiem MTAThread. Próbowałem utworzyć nowy wątek z stanem mieszkania STAThread do wywoływania interfejsu użytkownika WPF, ale to nie zadziałało. Próbowałem również użyć metody Dispatcher.BeginInvoke i Background Worker, ale żaden z nich nie rozwiązał problemu.
1) Czy możemy nawiązać połączenie z oknem/sterownikiem WPF bez oznaczania głównego jako STAThread? Jeśli to możliwe, Czy ktoś może wskazać mi właściwy kierunek? 2) Jeśli jedynym sposobem na osiągnięcie tego jest uczynienie głównego wątku STAThread, będzie to miało wpływ na ogólną wydajność/szybkość reakcji aplikacji.
Z góry dziękuję.
W rzeczywistości STA jest potrzebna dla OLE drag-drop i pewien komponent COM sprzęgania do pracy .. – Gishu