Introduction à Windows Presentation Fundation
Historique
2002 : Framework .NET 1.0
Au coeur de .NET 1.0, on retrouve une machine virtuelle qui est appelée : CLR (Common Language Runtime)

La CLR est :
- une spécification d'un langage de haut niveau Microsoft
- compilé en CIL (Common Integrated Language)
- machine virtuelle (OS ou navigateur) implémenté par Microsoft et Novell (projet Mono)
Ensuite, on retrouve l'API WinForms :

- Dans le "Managed Code" ("code géré", au-dessus de la VM), les routines du GDI sont utilisées dans l'API WinForms.
- Dans le "Native Code" (proche du système, ce bloc intéragit avec le matériel), la Graphical Device Interface (GDI) est une norme de représentation d’objets graphiques. C'est le composant Windows responsable de la gestion des IGs qui communique avec le matériel via DirectX.
2006 : Framework .NET 3.0
Le .NET 3.0 est directement intégré à Windows Vista ce qui montre un changement de mentalité : désormais, il doit être utilisé.

Dans le bloc vert, au cœur du bas niveau, on retrouve la CLR. Puis dans le bloc gris, les nouveaux framework spécifique à 3.0 :
- WF (WorkFlow) : gestion de flux
- WCF (Windows Communication Fundation) : gestion de la communication (Web Service)
- CardSpace : gestion d’identité
- WPF : le nouveau framework graphique
WPF plus en détails :

- MIL (Media Integration Layer), c'est un bloc bas niveau puissant qui dessine l’application WPF. Cette interface est optimisée avec DirectX et permet le support 2D/3D beaucoup plus avancé que le GDI.
- Codec : codecs pour gérer les images JPG, BMP …
- PresentationCore : wrapper du MIL de plus haut niveau.
- PresentationFoundation : bloc "end-user" qui regroupe les outils de création d’UI (layout, storyboard, databinding ...)
2007 : Framework .NET 3.5
Le .NET 3.5 a permis d'améliorer les performances du WPF et fournit des outils de développement plus fonctionnels que la précédente version.