2011-10-08 13 views
33

Jak rozumiem, WinRT jest inną wersją WPF napisaną bez użycia bazowych interfejsów API Win32.WinRT i WPF w Windows 8

Jaka jest relacja WinRT i WPF? Czy WPF będzie działać pod Metro w systemie Windows 7, czy uruchomi klasyczny pulpit?

To nie jest takie jasne z Keynote. Jeśli ktoś ma zainstalowany system Windows 8, może potwierdzić jego zachowanie.

Dzięki

+2

Spodziewaj się gorzej, gdy przychodzisz z WPF. Wiele rzeczy zostało usuniętych. –

Odpowiedz

5

WinRT to nowa biblioteka, że ​​można użyć XAML, ale nie WPF.

WPF wykorzystuje przede wszystkim technologię DirectX do wizualizacji.

Można użyć WinRT z:

  • XAML
    • C#
    • C++
    • VB.NET
  • HTML/JS/CSS
+0

Czy WPF przechodzi na klasyczny pulpit lub działa pod Metro? Dzięki – bstodos

+0

WPF jest przeznaczone dla aplikacji na komputery stacjonarne, a nie metro. Aplikacje Metro muszą być napisane AFAIK z WinRT. –

+0

Ale powinniśmy być w stanie łatwo przenieść nasze modele WPF i ViewModels do WinRT, i musimy tylko przepisać nasze widoki? –

10

Nie nie ma związku między WPF i WinRT, tak jak nie ma relacji między Silverlight i WPF. Teraz mamy trzy technologie: WPF, Silverlight i WinRT.

Jeśli spróbujesz wykonać aplikację WPF, nie będzie ona wykonywana w Metro, będzie wykonywana tylko na klasycznym pulpicie.

W Visual Studio 2011 masz WPF i Metro jako dwa różne typy aplikacji, a Xaml dla WPF i WinRT to nie to samo, Xaml dla WinRT jest prawie taki sam jak Silverlight, ponieważ wiele klas istnieje dla WPF brakuje w bibliotece WinRT. Ale większość klas istniejących dla Silverlight jest dostępna w WinRT.

37

WinRT to zamiennik dla Winapi. Interfejs API jest natywny, bardzo odmienny od WPF, który działa jako warstwa na wierzchu CLR. Z pewnością przypomina WPF, część tego, co powoduje zamieszanie. Przyjął format metadanych zarządzanego kodu, zastępując stare biblioteki typów. I używa XAML dla projektów interfejsu użytkownika, podobnie jak WPF, Silverlight i Windows Phone. Nadal można pisać aplikacje WPF dla Windows 8, ale aplikacja nie może być opublikowana za pośrednictwem sklepu, nie będzie zintegrowana z pulpitem Metro ani nie będzie działać na tabletach opartych na rdzeniu ARM. To, czy to prawdziwy problem, zależy od tego, jak dobrze Metro zrobi na rynku.

10

Windows Runtime (WinRT) to alternatywny interfejs API używany do tworzenia aplikacji Metro (i późniejszej aplikacji serwerowej).

Interfejsy API są oparte na klasach/metodach/strukturach i są wyświetlane w aplikacjach sieci .Net, aplikacjach html5/css3/javascript i aplikacjach Metro C/C++.

Implementacja jest natywna.

Interfejsy API są widoczne za pośrednictwem plików .winmd, które zawierają metadane bardzo podobne do metadanych w zestawach .Net.

Interfejsy API zostały zaprojektowane w sposób zapewniający bezpieczeństwo i asynchroniczność z wieloma interfejsami API wymagającymi użycia asynchronicznych/oczekujących, ponieważ wykonanie ich może trwać dłużej niż 50 milisekund.

Zawiera podzestaw Win32 API i COM apis.

Zresztą ... Poniższe linki pomoc ... channel9 ma także niektóre // Build/wideo na ten temat ..

Metro style app rozwój - http://msdn.microsoft.com/en-us/windows/apps/

Win32 oraz COM dla stylu Metro aplikacje - http://msdn.microsoft.com/en-us/library/windows/apps/br205757(v=VS.85).aspx

API dla aplikacji Metro stylu - http://msdn.microsoft.com/en-us/library/windows/apps/br211369(v=VS.85).aspx

2

WinRT jest niezarządzany interfejs API oparty na interfejsach COM. Korzystasz z niego, wywołując obiekty budowane w plikach metadanych .winmd (katalog Windows \ System32 \ WinMedataData).

Wszystkie przestrzenie nazw zaczynają się od "Windows.".

Możesz napisać swoją aplikację Windows 8 za pomocą plików XAML, ale to jedyny wspólny punkt z WPF.

Powiązane problemy