我有一个大型的wxWidgets(Win32)LOB应用程序。将来我想摆脱wxWidgets并想要去WPF(Prism)。我想只在WPF中开发任何新组件,并希望嵌入到wxWidgets应用程序中,这样我就可以重复使用它,只要我去完整的WPF应用程序。
我遇到了将WPF组件托管到Win32应用程序的3种方法。
多处理架构
将WPF组件创建为exe,并使用SetParent()和MoveWindow()调用将其嵌入到现有的Win32应用程序中。我创建了POC,并按预期工作。
使用COM接口包装WPF组件
.NET和C ++都支持COM。这是可以实现的,但我没有创建任何POC。
Use the Guidelines given by Microsoft
将C ++应用程序编译为C ++ / CLI应用程序。一旦它成为C ++ / CLI应用程序,您就可以轻松地混合使用托管代码和本机代码。
如果有人已经遇到过这样的情况,请告诉我后果是什么我必须面对上述方法。
我听说过焦点,键盘事件和鼠标事件的问题。