Winforms透视与WPF。一般问题

时间:2011-01-14 13:02:36

标签: wpf winforms

我知道这里已经讨论过这些问题,但从未见过将它们置于这个新的角度。我们都知道微软不再更新WinForms了。对于客户端应用程序,他们现在推动WPF。人们说WPF更难学(我不知道,真的没有尝试过。而且当我尝试过时,我并不太喜欢它)。但另一方面,可能只是WinForms是完美而且这里没有什么可做的了吗?

3 个答案:

答案 0 :(得分:4)

WPF作为WinForms更难学习。然而它真的很强大,并为您提供了许多新的可能性。 (我非常喜欢DataBinding-features和Templating)。

另一方面,WinForms非常稳定,并且构建在Win32上。我相信将来很长一段时间都会得到支持。但对我来说很明显,如果微软有一个新概念,它将不会扩展功能。如果你有一个新应用,你会扩展你的旧应用吗?

对我来说,我已经换了几年了,我从来没有后悔这个改变。但是,我有很多关于WinForms-apps的客户,我之前构建过,而且我没有急于将它们更新为WPF。我从来没有遇到过WindForms的问题,它确实是一款优质可靠的产品。至于你的问题:我认为WinForms真的很完整。它代表了它的时间和功能,这次必须提供。然而,它并不完美,没有软件可以完美。此外,我也了解很多公司,使用WinForms开发新的应用程序。 MS肯定不会让很多应用程序存在的技术死掉。看看XP,它会比Vista更长寿。

答案 1 :(得分:1)

难以学习是主观的。

我在同一时间开始学习winforms和WPF,我对使用WPF感到更自信,觉得我更快地选择了它,因为我没有“忘掉”winforms。

当然,一些WPF概念最初难以理解,但一旦点击到位,您将开始取得进展,不会回头。

说两种技术都很棒。 Winforms Ace卡是成熟,稳定且更容易找到帮助的。

说到这一点,你的问题有一个暗示“我不确定选择哪一个,所以需要有人告诉我” - 最好的建议是选择一个并开始编写你的申请。可以在WPF和Winforms中编写出色的应用程序。

答案 2 :(得分:0)

WPF肯定比WinForms更好,当你开发任何LOB应用程序时,它是你管理代码/项目的重中之重。使用WPF时,您可以使用以下功能:

  1. 将您的观点与逻辑分开(xaml的强大功能,更易于阅读和设计)
  2. 您可以实现MVVM,让您可以很好地控制代码。当与一个大项目的多个团队合作时,这是一个很大的优势。
  3. 除此之外,你可以选择使用像MVVM灯这样的框架,或者使用Prism 4.0,这不仅有助于实现MVVM,还有其他功能。
  4. 另一大优势是,一旦您在WPF中开发应用程序,您将能够轻松地在Silverlight中进行开发。使用Silverlight 4,您可以在不进行编码的情况下从浏览器中运行应用程序。相同的应用程序将在桌面,云,Web上运行。 最后我会说我不会使用WinForms因为它的2011年,WinForms是90年代......