代码之家  ›  专栏  ›  技术社区  ›  Abdu

WPF应用程序与WinForm商务应用程序的优势?[关闭]

  •  82
  • Abdu  · 技术社区  · 16 年前

    我知道ASP.NET和WinForm开发。我不是那种仅仅因为新技术而跳入新技术的开发人员。它需要给我额外的好处,比如更高的生产力。

    对于纯业务应用程序,WPF比WinForms有什么优势?我对WPF提供的额外的眼糖、动画、渐变、图像显示效果等不感兴趣。业务应用程序用于数据输入、数据报告,可能还有一些图表和照片的静态显示。

    WPF将如何帮助这些应用程序?更丰富的数据绑定?WinForm是一种成熟的经验证的技术,我喜欢这样一个事实:我可以在Visual Studio中完成所有工作,而在WPF中可以使用多个IDE(vs&Blend系列)。另外,我认为WPF没有像WinForm对应控件(DataGridView等)那样丰富的数据绑定控件。在阿法克,微软仍将支持WinForms多年。

    试着说服像我这样的人改变主意。

    7 回复  |  直到 16 年前
        1
  •  99
  •   Community CDub    7 年前

    我知道ASP.NET和WinForm开发。我不是那种仅仅因为新技术而跳入新技术的开发人员。它需要给我额外的好处,比如更高的生产力。

    对于我的团队来说,事实证明,WPF比WinForms开发应用程序要快得多。我们最近在32个工作日内发布了一个中型应用程序。我们的优势在于团队中有经验丰富的WPF开发人员,以及渴望学习该技术的缺乏经验的人。士气很好,生产效率也很高。

    WinForm是一种成熟的经验证的技术,我喜欢这样一个事实:我可以在Visual Studio中完成所有工作,而在WPF中可以使用多个IDE(vs&Blend系列)。

    你认为自己是一个手工编码员,还是一个拖拽编码员?如果您认为自己是一个拖放器,那么当前的WPF工具可能不适合您。也许等待Visual Studio 2010?我几乎只在XAML工作。大多数WPF的人可能会同意,这是目前创建WPF应用程序最有效的方法。但是,我也手工制作了我的HTML,所以我觉得很自然…

    对于纯业务应用程序,WPF比WinForms有什么优势?我对WPF提供的额外的眼糖、动画、渐变、图像显示效果等不感兴趣。

    我以前是这样想的,但我最近开发了一个业务应用程序,它具有渐变、基本动画和效果。这些奇特的功能是为了增强用户体验而添加的。为什么商业应用程序应该是战列舰灰色?为什么它们不可用?当然,让商业应用程序可用的不是颜色、渐变和动画,但是使用这些效果可以帮助用户体验,这对我来说是很重要的。我可以在winforms的wpf应用程序中完成我所做的一切——这只会花费更长的时间。

    更丰富的数据绑定?

    数据绑定支持真的很神奇。这是我最喜欢的平台功能。退房 this wonderful Databinding Cheatsheet .

    试着说服像我这样的人改变主意。

    我已经决定,我不会试图说服任何其他人转而使用WPF。我试图“说服”的开发人员(所有有经验的WinForms开发人员)通常都在与平台作斗争。他们没有投资于这项技术。他们不“明白”。 我鼓励人们检查一下这项技术,看看它是否适合作为开发人员使用。学习曲线很大。如果你是通过书本学习的,那就去看看吧。 this SO post 关于WPF书籍的一些小评论。如果您通过视频学习,请查看 windowsclient.net WPF videos . 如果你以身作则,就去看看 this this 邮政。忘记你对WinForms的所有了解。WPF实际上似乎比WinForms更接近ASP。创建一些示例应用程序。看看它是否适合你和你的团队。

    由于您是多技能的(ASP.NET/WinForm技能),因此您可能会看到在WPF中进行Skilling的优势,因为它与Silverlight密切相关。Silverlight填补了富客户端应用程序和Web应用程序之间的空白。

    我个人认为wpf是.NET框架可用的最佳客户端技术,并且通常会避免在WinForms中开发以供将来工作使用。牛传染性胃肠炎病毒

    祝你的决定好运。

        2
  •  9
  •   Orion Edwards    16 年前

    我有很多winforms的经验,只玩过一点wpf,但是我被卖了。

    为什么?

    • 更灵活。如果你想在WinForms中做任何非标准的事情,痛苦和痛苦就会随之而来,但在WPF中,这很简单。

    • 更好的数据绑定

    • 更容易开发(一旦你了解了核心概念,很不幸这需要一段时间)

        3
  •  4
  •   geofftnz    16 年前

    当我开始研究WPF时,我把它当作“带有向量图形的WinForms”,直接跑到学习悬崖的一边。从winforms过渡到wpf的正确方法是服用英雄剂量的任何麻醉剂,你可以把手放在上面,以便忘记你所知道的一切,然后从头开始。

    不过,说真的-如果您使用模型视图视图模型这样的模式,它会更干净、更容易。更多阅读 The Orbifold ,这个 Google Groups thread Channel9

    然后在某个时刻你会有一个顿悟,开始数据绑定一切。您的代码隐藏只会变成对InitializeComponent()的调用。

        4
  •  4
  •   akjoshi HCP    13 年前

    谢谢你的帖子。我公司在WinForms上投入了大量时间。我无法想象在32个工作日内将一个中型应用程序推出;我们的认证周期是几个月,有时是每年或更长的发布周期(尽管我们尽可能地坚持敏捷开发理念),这就是我们开发的应用程序的本质。

    我第一次使用wpf,发现在winforms中使用elementhost可以获得wpf的一些好处。我扩展了一个wpf文本框,然后将扩展类包装在一个win-forms用户控件中,现在有一个win forms应用程序使用该wpf文本框,并提供拼写检查支持。

    我很高兴看到微软想到这一点(在winforms中托管wpf,反之亦然),因为我真的看不到我的公司向wpf迁移,除非我们能在很长一段时间内过渡;winforms投资太多,无法重新启动。根据我最近的经验,我可能会开始和其他一些开发人员谈论我最近的经验,看看他们的想法是什么。我认为WPF需要一段时间来适应,这与其他评论似乎是一致的。

        5
  •  1
  •   Community CDub    7 年前

    不完全重复,但您可能会发现,除了新的图形位外,这篇文章还有助于了解WPF的好处。

    WPF or WinForms for internal tools?

        6
  •  0
  •   Community CDub    7 年前

    只需在stackoverflow中检查这个搜索结果就可以得到很多答案。 https://stackoverflow.com/search?q=WPF+Winforms

        7
  •  0
  •   Webjedi    16 年前

    想象一下,如果您可以将来自ASP.NET/(Silverlight)页面的相同UI(XAML)用于桌面应用程序。您只需要构建一次,但要将它连接到任何一个……这是WPF/XAML的意图之一……我们真的在那里吗?还没有,但越来越近了。