据我所了解,WinRT是一种不使用基础Win32 API编写的WPF不同版本。
WinRT与WPF有什么关系?WPF能在Windows 7的Metro下工作吗,还是它将启动经典桌面?
从主题演讲中并不太清楚。如果有人安装了Windows 8,则可以确认其行为。
谢谢
据我所了解,WinRT是一种不使用基础Win32 API编写的WPF不同版本。
WinRT与WPF有什么关系?WPF能在Windows 7的Metro下工作吗,还是它将启动经典桌面?
从主题演讲中并不太清楚。如果有人安装了Windows 8,则可以确认其行为。
谢谢
WinRT是Winapi的替代品。 API是本地的,非常不像在CLR上运行的WPF层。 它确实类似于WPF,这部分引起了困惑。它采用了托管代码的元数据格式,取代了旧的类型库。并使用XAML进行UI设计,就像WPF、Silverlight和Windows Phone一样。你仍然可以为Windows 8编写WPF应用程序,但你的应用程序不能通过商店发布,也不会与Metro桌面集成,也无法在基于ARM核心的平板电脑上运行。这是否真正是一个问题在很大程度上取决于Metro在市场上表现如何。
WPF和WinRT之间没有关系,就像Silverlight和WPF之间没有关系一样。现在我们有三种技术,WPF、Silverlight和WinRT。
如果你试图在Metro上运行WPF应用程序,它将无法运行,只能在传统桌面上运行。
在Visual Studio 2011中,你有WPF和Metro两种不同类型的应用程序,WPF和WinRT的Xaml并不相同,WinRT的Xaml与Silverlight的Xaml非常相似,因为在WinRT库中缺少了许多存在于WPF的类。但是大多数在Silverlight中存在的类在WinRT中都是可用的。
Windows Runtime(WinRT)是一个替代API,用于创建Metro应用(以及后来的服务器应用程序)。
这些API基于类/方法/结构,并提供给.Net Metro应用程序、html5/css3/javascript应用程序和C/C++ metro应用程序。
实现是本机的。
API通过.winmd文件可见,其中包含与.Net程序集中非常相似的元数据。
这些API旨在安全且异步友好,许多API需要使用async/await,因为它们可能需要超过50毫秒才能执行。
它包括Win32 API和COM API的子集。
无论如何...以下链接有所帮助... Channel9也有一些关于此主题的//Build/视频...
Metro样式应用程序开发 - http://msdn.microsoft.com/en-us/windows/apps/
Metro样式应用程序的Win32和COM - http://msdn.microsoft.com/en-us/library/windows/apps/br205757(v=VS.85).aspx
Metro样式应用程序的API - http://msdn.microsoft.com/en-us/library/windows/apps/br211369(v=VS.85).aspx
WinRT是一个新的库,你可以使用XAML,但不能使用WPF。
WPF主要使用DirectX进行可视化。
您可以使用以下方式之一使用WinRT:
WinRT是基于COM接口的非托管API。您可以通过调用.winmd元数据文件中构建的对象来使用它(Windows\System32\WinMedataData目录)。
所有命名空间都以“Windows.”开头。
您可以使用XAML文件编写Windows 8应用程序,但这是与WPF唯一的共同点。