有没有办法编写一个WinRT(Metro)应用程序,能够在Windows 7和Vista上运行?
有没有办法编写一个WinRT(Metro)应用程序,能够在Windows 7和Vista上运行?
我们不能把那些不能升级到Windows 8的客户长期留在枯槁中。然而,我们的应用程序也有“平板电脑”/“触摸”版本的需求。
那么我们怎么能从单个代码库中支持带有Metro的触摸浏览Windows 8以及我们现有的客户呢?
当WPF出现后,微软经过了很多“推动”之后,才让它能够在Windows XP上运行——WinRT是否也有类似的讨论?
(由于XP支持正在逐步减少,我并不期望任何解决方案能在XP上工作。)
另请参见:ARM版本的Windows 8只能运行Metro(WinRt)风格的应用程序吗?
admin 更改状态以发布 2023年5月21日
最好的答案是您不想将同一个应用程序运行在Windows 7和Windows 8 Metro样式上。最适合鼠标和键盘的用户界面(Windows 7)不适合于触摸优先的展示,反之亦然。为这两个不同的世界重新设想用户界面是重要的。
话虽如此,如果您想共享大量的代码,有两个选择:
1)主要用JavaScript /HTML5编写。 这将允许您重用许多资源(特别是业务逻辑部分)。
2)使用(桌面)Silverlight编写。 Silverlight XAML与Windows XAML最接近。 WPF则更远,以后需要更多重新工作。
无论哪种情况,编写跨平台代码时都应查看并遵循使用的原则。了解平台依赖项并将其隔离在间接界限之后。您要本地化所有必须更改的代码。例如,您不希望在代码中散布对.Net System.IO.File API的调用,而这些API将必须更改为Windows.System.Storage调用。 相反,您希望本地化在一个可以以后修改的函数中。