我正在使用 C++/CLI 接口层将 C# WPF 对话框添加到现有的 C++ MFC 应用程序。我有一些工作,除了我的方式有问题。例如:
- MFC 应用程序使用 ShowDialog 显示 WPF 对话框。按预期工作。
- 该 WPF 对话框显示了一个使用 DoModal 的 MFC 对话框。WPF 对话框隐藏在基本 C++ 应用程序后面,除非我手动更改 IsEnabled,否则它不会被禁用。不理想,但它有效。
- 现在,该 MFC 对话框已关闭。现在由于某种原因,基本 MFC 应用程序已启用,但由于 WPF 对话框尚未关闭,它仍应被禁用。这很糟糕,因为它现在允许用户在 WPF 对话框仍然打开时做一些疯狂的事情。
我有一种感觉,如果我能正确设置父对话框,它会更好。但到目前为止,我还无法将 MFC 对话框的父级设置为 WPF 对话框,反之亦然。而且,我什至不知道这是否能解决问题。
有任何想法吗?