C# 如何在.NET应用程序中托管本机QWidget

C# 如何在.NET应用程序中托管本机QWidget,c#,.net,c++-cli,qt5,C#,.net,C++ Cli,Qt5,我们有一个.NET4.x项目和一个Qt5.x项目 我们希望在.NET项目中使用Qt项目中的一个或多个QWidget。如果可能的话,这些小部件最好添加到表单控件中 解决这个问题的推荐方法是什么?一个选择是使用ActiveX。我花了一些时间在一个混合了Win32、WPF和几种风格的Qt的应用程序上,你可以让它工作,尽管它可能会让你的头发变白 您可以在WPF应用程序中承载本机控件: Qt可以使用qtwinmigrate项目托管在本机Windows应用程序中。注意-我只是用它来主持对话框,而不是嵌入单个

我们有一个.NET4.x项目和一个Qt5.x项目

我们希望在.NET项目中使用Qt项目中的一个或多个QWidget。如果可能的话,这些小部件最好添加到表单控件中


解决这个问题的推荐方法是什么?一个选择是使用ActiveX。

我花了一些时间在一个混合了Win32、WPF和几种风格的Qt的应用程序上,你可以让它工作,尽管它可能会让你的头发变白

您可以在WPF应用程序中承载本机控件:

Qt可以使用qtwinmigrate项目托管在本机Windows应用程序中。注意-我只是用它来主持对话框,而不是嵌入单个控件,所以我不知道这实际上是一种可能性。我也经历了一段非常困难的时间,让来自所有3个系统的消息管道能够很好地协同工作,但我认为这(或多或少)是可能的


真正的问题是如果你有WPF在你的支配下,它真的值得让Qt在那里吗?您需要有一个相当大的现有小部件来证明这一痛苦。

哪种.NET UI框架?主要的Windows窗体。注意,我们的应用程序最初是Win32,后来添加了WPF,然后添加了Qt,所以它与您的应用程序的角度不同。希望答案能为你指明正确的方向。感谢你的反馈。msdn链接很有趣。