我从WinForms窗口启动的WPF表单显示了所有文本框
作为无模式对话框启动时不可编辑。我用了
ElementHost.EnableModelessKeyboardInterop
解决这个问题&它在那里工作。
我也是从MS Excel打开相同的WPF UI作为加载项。
EnableModelessKeyboardInterop
黑客在那里不起作用。每当我尝试
编辑我的WPF文本框,焦点转移到Excel和键盘输入
在Excel上而不是在我的WPF文本框上呈现。关于如何解决这个问题的任何想法?
P.S。 - 这是我之前关于SO的问题的继续:WPF modeless dialog renders textbox uneditable
答案 0 :(得分:8)
通过此链接提供解决方案:Running WPF Application with Multiple UI Threads
var thread = new Thread(() =>
{
var wpfWindow = new WPFWindow();
wpfWindow.Show();
wpfWindow.Closed += (sender2, e2) => wpfWindow.Dispatcher.InvokeShutdown();
Dispatcher.Run();
});
thread.SetApartmentState(ApartmentState.STA);
thread.Start();