查看 VS2008 中的 C# 项目模板,提供的有 WPF 用户控件库、WPF 自定义控件库和 Windows 窗体控件库。如果您想将用 C++ 编写的遗留主动控件转移到 C# 和 .NET 的世界中,您会使用哪一个?

有帮助吗?

解决方案

听起来你正试图同时做几件不同的事情:

  1. 将代码迁移到较新版本的 Visual Studio 中进行构建。
  2. 将您对技术的使用迁移到更新的技术(ActiveX 到 .net)
  3. 迁移您的语言(c++ 到 c#)。

如果您的代码库较小,您可能最好从头开始,并根据需要将功能移植到新的代码库中。

对于更大的代码库,您需要意识到这在工作量和缺陷率方面都是一项昂贵的任务。

订单可能是:

  1. 将代码导入到较新版本的 Visual Studio 中。让它编译。检查每个项目的项目设置。
  2. 重构您的代码以尽可能隔离 mfc 和 activex 代码。遵循良好的重构实践,尤其是在开始之前没有进行很多单元测试的情况下。
  3. 考虑用 .net 替换您的 ActiveX 层。
  4. 考虑哪种 GUI 工具包最适合替代 MFC。
  5. 语言 - 考虑首先转向托管 c++。
  6. 考虑从托管 C++ 迁移到 C#。

最重要的是能够证明执行上述所有操作的合理性!

其他提示

没有项目模板可以为您执行此操作。您不妨阅读并从用户控件开始。

您必须考虑将托管该控件的目标应用程序。如果这是一个业务应用程序,我已经 听到 WPF 并没有提供比 Forms 更大的优势。根据 然而,作者认为杀手级 WPF 是一个 LOB 应用程序,它利用 WPF 提供的图形功能进行数据可视化。

最后我想这是一个成本/效益分析。您是否会走 WPF 路线并为图形数据可视化的未来收益付出学习曲线的成本,或者您会坚持使用经过验证的正确方法并冒着开发过时应用程序的风险。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top