我是WPF的新手,并且有关于WPF和Windows Forms集成的几个问题.
我有一个现有的Visual C#Windows窗体应用程序.我想将它与WPF窗口集成,可以通过单击按钮显示.这是不可能的,因为WPF期望调用线程是一个STAThread,默认情况下WinForm假定该线程是一个MTAThread.我尝试使用公寓状态STAThread生成一个新线程来调用WPF UI,但这不起作用.我尝试使用Dispatcher.BeginInvoke方法和后台工作程序,但没有一个解决了这个问题.
1)我们可以调用WPF窗口/控件而不将Main标记为STAThread吗?如果有可能,有人可以指出我正确的方向吗?2)如果实现此目的的唯一方法是使主线程成为STAThread,那么对应用程序的一般性能/响应性是否会产生任何影响.
提前致谢.