0

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

4

3 回答 3

2

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

  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#。

Most importantly be able to justify doing all of the above!

于 2008-09-10T23:10:50.900 回答
0

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

于 2008-09-10T22:55:49.983 回答
0

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

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

于 2008-09-10T23:00:29.177 回答