【发布时间】:2011-07-21 17:57:38
【问题描述】:
正如标题所述,我多次从 WinForm 应用程序调用 WPF 表单(调用堆栈上有几个类)。最初,WPF 只工作一次。经过一番谷歌搜索,我发现我必须将 ShutdownMode.OnExplicitShutdown 添加到 WPF 应用程序创建中。
现在,添加后,在退出第一个 WPF 表单时,控制永远不会从“运行”调用返回,并且焦点会返回到 WinForm 对话框。如果我退出它,我最终会从 WPF 运行中返回控制权。
Winform:
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
MainForm form = new MainForm();
Application.Run(form);
WPF 预初始化:
application = new System.Windows.Application
{
ShutdownMode = System.Windows.ShutdownMode.OnExplicitShutdown
};
调用 WPF 表单:
ConfirmForm form = new ConfirmForm();
application.Run(form);
这里发生了什么?:
【问题讨论】: