11

Metro与WPF和WinForms有什么不同?Winforms,WPF和城域之间的区别?

是否允许在Windows App Store上销售Metro应用程序?

+0

__如果你想通过商店销售,那么你需要学习/使用地铁,是的。否则你有很多选择。 –

回答

14

Metro应用程序是专门为Windows 8编写的应用程序,它使用Windows 8提供的所有优点。他们可以放在Windows 8应用程序商店。 http://devcomponents.com/blog/?p=1061

WinForms是旧的Windows格式,被WPF取代了。 WPF更加优化并且包含例如矢量图形。与WinForms应用程序相比,WPF提供更好的性能。它提供了更丰富的UI体验。它使用XAML进行开发(用户界面的XML描述)。 WinForms和WPF给你现有的Windows Look &感觉。

Metro应用程序看起来更像Windows Phone 7应用程序,但功能更多(但我认为未来两者都将收敛)。它们主要针对平板电脑市场和触摸屏(以及未来的混合设备)。 Metro应用程序可以与iPad应用程序进行比较,但更加丰富,并且具有Windows操作系统的全部功能。

如果您想编写使用鼠标接口的标准Windows应用程序,并且像当前的Windows应用程序那样工作,我推荐使用WPF。

如果您想专门针对Windows 8市场并创建触控友好的应用程序,则必须使用Metro应用程序。

我不会推荐使用WinForms进行新项目了。只适用于迁移到WPF的旧项目在时间和金钱上过于昂贵。

您可以查看MS模式&针对WPF和WinForms架构发布的此架构指南以获取进一步的建议(它不包含Metro应用程序)。 http://apparchguide.codeplex.com/

希望有所帮助。

+0

好吧,另一个跛脚的问题。要了解metro风格的应用程序开发,我还必须学习winRT api,或者我会使用与.NET框架类相同的开发winform或WPF应用程序的类。 –

+0

这取决于是否支持您要使用的.NET类。 Windows 8引入了一个称为Windows Runtime(WinRT)的新本机运行时间,它是Windows 8中Metro新用户体验的支柱。如果您从头开始,则应尝试仅使用WinRT。如果您需要使用旧的.NET类,则必须检查兼容性,并在WinRT下重新编译它们或使用可移植类库(PLC)方法。看看这里http://stackoverflow.com/questions/10807123/does-net-4-0-business-apis-work-with-win-8-metro-apps –

+0

因此,本质上或者我可以开发的WinForms,WPF使用.NET框架类。或者我可以使用部分支持的winRT .NET框架类在Metro中开发。对 ? –