Silverlight比WPF比Winforms什么对我的目的有好处?

时间:2010-03-22 09:45:14

标签: .net wpf windows winforms silverlight

我即将启动一个新的Windows应用程序,该平台的竞争者是:

  • Windows窗体
  • WPF
  • Silverlight的

现在我至少在上一个应用程序中使用WPF的经验并不是很令人鼓舞(应用程序无法在部署计算机上运行,​​我不得不在Winforms中重新执行)。所以我的信心在这里动摇了。

我的应用程序用于批量分发(最后一个版本有大约100,000多个安装)。因此,我想确保我的用户能够使用它并毫无问题地享受它。

我希望创建一个漂亮的界面,像Flex或Silverlight,iPhone应用程序一样,下一步,动画和效果。如果可以的话,我真的很想使用WPF或Silverlight。

我的需求是

  1. 对视觉效果和动画效果的良好支持。
  2. 支持数据库连接。
  3. 支持打印(Silverlight中是否有相应的PrintDocument)
  4. 一定不要遇到部署问题。
  5. Silverlight是通用的,但是它有打印支持和良好的控件工具集吗? WPF有打印支持和一个很好的工具集,但我可以依赖它吗? Winforms已经过时了,并没有那么令人印象深刻,但我还是应该继续使用它吗?

    您的建议将不胜感激

4 个答案:

答案 0 :(得分:4)

  

对视觉效果和动画效果的良好支持。

因此,除非你想以痛苦的方式做事,否则WinForms真的出来了。

  

支持数据库连接。

WinForms和WPF可以直接使用,Silverlight需要来自后端服务器的支持(尽管可以是将数据公开为Web服务的SQL Server)。

  

支持打印(Silverlight中是否有相应的PrintDocument)

Silverlight 4具有良好的打印支持,如果您要定位Silverlight,则会定位到SL4。

  

一定不要遇到部署问题。

所有技术都存在部署问题。它的性质和这些麻烦的程度。

Silverlight的优势在于它不需要客户端具有完整的.NET框架并且可以在Mac上运行。您需要通过Web服务器进行部署。

答案 1 :(得分:2)

首先 - 您的部署问题不是您的问题。如果你让客户告诉你做某事,你提出技术,他们检查,这是他们的责任。我目前在银行做软件,而且我们非常有限,但这不是我的问题:我知道我可以使用什么,可以在进入不支持的路径之前询问管理员。

那就是说 - 在询问你想要什么或能够支持之前检查一下。

我最近会在.NET 4.0上使用WPF。我实际上是为复杂的交易应用做的。与管理方面的Web应用程序一起(有很多,我使用动态数据框架在代码中添加用户等)。

之后我会试试Silverlight。特别是4.0 - 新的“本地模式”很棒,即使在菜单中有快捷方式也可以在本地安装。用户没有真正的区别,Silverlight 4上的XAML比earleir版本好很多。

我会试着远离Winforms--它的灵活性要低得多。

但最后,你必须先检查要求。例如,在我目前工作的地方,.NET 4.0是“否”,任何版本的Silverlight也是“否”,直到他们在标准系统映像上进行升级。

答案 2 :(得分:1)

这一切都取决于你有多少时间。

如果时间不够,最好选择你所知道的(WinForms),但是如果你有足够的时间来开发它,那么去Wpf可能是值得的,因为动画和视觉效果更好原生于WinForms。

  1. 动画和视觉效果更容易/ 更好的WPF
  2. 两者都支持数据库 connectivitiy(.NET支持wpf 和Winforms)。
  3. 印刷也不太难。
  4. WinForms可以定位.NET 2.0,这意味着它可以更轻松地部署。 Wpf必须以3.5为目标,这意味着您的用户必须使用最新版本。此外,如果您为.NET 3.5 SP1开发,则可能会遇到不使用SP1的用户的麻烦。 这可能会导致部署和可用性问题。

答案 3 :(得分:0)

如果您愿意付款,请查看Telerik Win forms controlsSilverlight 3 has print support