WPF、Windows Forms还是其他什么?

13

我们即将开始开发一个新产品。我们目前的产品是使用VB.NET编写的传统客户端-服务器Windows Forms应用程序。

WPF是否适合商业应用? 从我所看到的情况来看,似乎使用WPF开发用户界面比使用Windows Forms更加困难。但我认为经验可以带来速度。但我有点担心WPF可能不会流行。

我们应该继续使用Windows Forms吗? 如果我们坚持使用Windows Forms,那么我们是否会一开始就被淘汰?我认为这样可以更快地进入市场,但是Windows Forms还会存在五年吗?

我们应该迁移到其他非Microsoft产品吗? 我们所有的开发人员都是.NET开发人员,因此迁移到另一个开发环境可能行不通。

我希望我能有一个水晶球。


1
另一个需要问的问题是,WPF在5年后是否还会存在。我目前对WPF所看到的并不喜欢,而WinForms则已经非常成熟和流行。微软一向以放弃未能成功的技术而著称。 - ILoveFortran
可能是WPF与Windows Forms的重复问题 - Peter Mortensen
五年后,Windows表单仍然可以创建,哈哈 - Lunchbox
再过5年,Windows表单仍然可以被创建,哈哈 - user7159857
而且WPF仍然活跃。 - Xam
5个回答

15

我们决定全面采用WPF构建最新的桌面电子商务软件包(除了报告外,我们使用Interop使用ReportViewer)。我从未后悔过。WPF的声明式方法易于理解,并有助于强制执行UI与业务逻辑的分离。

话虽如此,如果你的团队有很多WinForms经验,那么花时间学习WPF可能会适得其反。

如果这不是问题,请尝试使用WPF,也许您会对它着迷。


3
自从这个问题被问出来已经过去了4年,很明显:WPF仍然存在——这让曾经称它会消失的人感到非常不满!看起来它将会长存下去。 - FredTheWebGuy

13
  1. WPF被用于多个最新的微软应用程序,包括Visual Studio 2010,因此我认为在自己的应用程序中使用它是“安全”的。开发速度当然取决于您对工具及其功能的熟悉程度。

  2. Windows Forms 在未来五年肯定仍将存在。

  3. 如果您正在构建旨在在Windows桌面上运行的产品,那么很难找到比.NET更好的选择,特别是考虑到这已经是您所了解的内容。如果您认为将来可能需要Mac或Linux版本,可以考虑其他替代方案。即便如此,随着Mono不断改进且没有立即推出这类版本的计划,.NET看起来也相当不错。


1
“Windows Forms 未来五年肯定还会存在。”现在已经被证明是正确的。 - Thomas Weller

4
WPF实际上比Windows Forms更易于使用,只是完全不同。一旦你理解了XAML的强大之处以及数据绑定、样式和动画可以做什么,你就再也不想回到将控件拖入Windows Forms设计器中了。
只需习惯手写XAML而不使用可视化设计器的想法即可。Visual Studio 2008内置的XAML设计器很差,Expression Blend更好,但它非常面向设计师。

1
在我选择平台(Windows Forms或WPF)时,我的主要问题是如何将应用程序安装在我们客户的PC上。
我们的客户主要是大型企业。因此,我们需要安装的每个额外组件都意味着批准时间的延迟。
因此,我选择了.NET 2.0和Windows Forms,因为这将预安装在我需要安装的所有PC的90%中。
如果您的客户是家庭/终端用户,则可以考虑最花哨的UI(WPF)。

0

@GvS:这相当无用,因为我几乎可以肯定3.0/3.5已经是自动更新了一段时间。但是,应该注意的是,在Windows 2000下不支持WPF。

另一个需要考虑的问题是,WPF和Windows Forms控件不能互换使用。如果您在Windows Forms控件中有大量投资,它们可以在WPF的Windows Forms包装器中某种程度上使用,但是非常不同。


3.0/3.5已经通过Windows更新提供,但这是一个可选的更新。可选更新很少被安装。 - Joel Coehoorn
2
大公司在更新其平台方面非常缓慢。在允许安装组件之前,必须测试其不会干扰其他软件。我目前正在为一个安装程序工作,已经花费了一年多的时间来获得在XP上安装.Net的批准。幸运的是我还有其他客户。 - GvS

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接