将 VB.NET 2.0 Winform 迁移到 3.5 WPF

Posted

技术标签:

【中文标题】将 VB.NET 2.0 Winform 迁移到 3.5 WPF【英文标题】:Migrate VB.NET 2.0 Winform to 3.5 WPF 【发布时间】:2010-09-23 17:13:33 【问题描述】:

是否可以将 VB.NET Winform 解决方案迁移到 3.5 WPF 解决方案。如果是这样,有什么建议吗?

提前致谢! 捷豹路虎

【问题讨论】:

【参考方案1】:

Microsoft 正在为我们做所有事情,因此我们不得不丢弃我们在 2 年前编写的所有内容。 根据乔什·史密斯的说法,

有没有办法将 Winforms 应用程序转换为 WPF 应用程序?

没有。这两个 UI 平台非常不同,没有将 WinForms 应用程序转换为 WPF 应用程序的应用程序。当然,这不会妨碍您重用您在 WinForms 中使用的任何 business/DAL/logging/Ioc/etc 库。

但是,您可能想查看this,这是一个非常基本但功能强大的 WinForms->XAML 转换器,由 WPF 和 Xaml 语言团队的 Rob Relyea 编写。

据他说,“我们(微软)还没有构建真正的转换器,因为我们认为大多数人不仅会移动控件,而且经常会在移动控件时重新考虑他们的应用程序。我们希望得到反馈...... "

另外,您可能想查看Guidance for migrating an app from Windows Forms to WPF,同样由 Rob Relyea 撰写。

【讨论】:

感谢您的信息和链接!看起来我会再次从头开始重写大部分内容,但至少我不会想知道是否有更简单的方法......谢谢! JFV @JFV - 欢迎您。我只是想警告你,我对这个话题一无所知......老实说,我只是用谷歌搜索过......但我相信 Rob Releya 所说的...... 最后一个链接已失效。查看存档:web.archive.org/web/20100929142258/http://…【参考方案2】:

直接回答是一个很大的问题。

如果您想充分发挥新平台的真正威力,您需要重建整个 Win 表单 UI 端和大部分相关代码,以实现有效的数据绑定和用户体验。您的 DataLayer 可以在 WPF 中完全重用。

你可以检查很多关于同一个问题的问题

What is the easiest way to upgrade a large C# winforms app to WPF

What are the bigger hurdles to overcome migrating from Winforms to WPF?

【讨论】:

有时坏消息最好直接传递:) 感谢您提供的附加链接,它们非常有帮助!【参考方案3】:

现在有一个项目可以完全满足您的要求。见Windows Forms to Windows Presentation Foundation Converter。另请参阅video。

【讨论】:

以上是关于将 VB.NET 2.0 Winform 迁移到 3.5 WPF的主要内容,如果未能解决你的问题,请参考以下文章

从 vb.NET (2003) 迁移到 vb2005 都有哪些好处?

vb.net 2.0 如何用Configuration.ConfigurationSettings.AppSettings读取配置文件中的内容?

SQL 和 VB.net winform 的批量更新概念

如何在未安装 office 的情况下从 winform vb.net 2008 导出到 excel?

VB.NET Winform的一些功能实现

VB.NET WinForm获取运行程序用户名