Windows Forms vs. WPF

本文关键字:WPF vs Forms Windows | 更新日期: 2023-09-27 18:00:39

我已经开发Windows窗体应用程序5年了。很多人说我应该调查WPF。我有几个关于WPF和Windows窗体的问题来确定哪一个是最好的。WPF比Windows窗体更新,许多人说它将是未来。其他人说Windows窗体更旧,因此更安全。我不确定将来会怎样。我在谷歌上搜索了优点和缺点,但我希望你能给我一个更深入的答案来回答这些问题:

  1. 根据性能,哪一个更好
  2. 使用WPF而不是Windows窗体的最大优点是什么
  3. 使用Windows窗体而不是WPF的最大优点是什么
  4. 哪一个更受企业使用/喜爱
  5. 从Windows窗体切换到WPF有多难
  6. 我应该明确研究WPF的哪些部分

Windows Forms vs. WPF

  1. 说WPF比windows窗体好,或者说它比windows窗体更好,这是没有意义的。这取决于许多因素:

    • 你正在构建什么样的UI。显然,您正在设计的视图的复杂性将影响两个平台上的性能。它们具有不同的布局和渲染管道。

    • 您如何有效地优化每个平台上的性能。

  2. 使用WPF而不是Windows表单的优点:

    • XAML使创建和编辑GUI变得容易,并允许工作在设计器(XAML)和程序员(C#、VB.NET等)之间进行拆分。

    • 它允许您为Windows应用程序和web应用程序(Silverlight/XBAP)创建用户界面。

    • 数据绑定,它允许您获得更干净的数据和布局分离。

    • 使用硬件加速来绘制GUI,以获得更好的性能。

  3. 使用Windows窗体而不是WPF的最大优点:

    • WPF的开箱即用控制套件比WinForms的要有限得多。

    • WinForms在第三方控制空间中得到了更大的支持。(这种情况正在改变,但现在,随着时间的推移,WinForms在社区中得到了更大的支持。)

    • WPF的主要缺点是Mono并不真正支持跨平台(例如,它不适用于Linux和Mac)。最初,Xamarian/Novalla表示,由于实现的复杂性,他们不会实现它。我没有看到任何相反的情况。并不是说没有,但他们的建议是编写模型类,然后做一个特定于操作系统的前端。即使WPF是开源的,它也可能建立在不容易移植的东西上。

  4. https://social.msdn.microsoft.com/Forums/en-US/e134134a-352f-435b-943a-eda7a2b14fc0/wpf-vs-windows-forms-2015?forum=wpf

  5. 这取决于你的学习能力。

  6. 我应该明确研究WPF的哪些部分?

    • XAML:了解XAML及其在WPF应用程序中的使用方法。

    • 布局:了解布局面板以及如何使用它们构建用户界面。

    • 数据绑定:了解WPF数据绑定的工作原理以及如何使用它。

    • 数据模板和触发器:了解数据模板和触发程序的工作原理以及如何使用它们。

    • 样式:了解如何在WPF中设置UI样式。

有关更多信息,请参阅下面提到的URL

Windows窗体与WPF Windows