Introduction

This article provides an overview of the Windows Presentation Foundation (WPF) architecture. WPF is a next-generation UI framework to create applications with a rich user experience. It is part of the .NET Framework 3.0 and higher.

WPF has a rich and extensible architecture for designing rich UI applications.

Your WPF applications need to have a planned architecture for the elements that you will use in your application.

To learn more about the Windows Presentation Foundation(WPF), we must have a clear undersanding of the WPF architecture. So let's get an overview of the WPF architecture.

Overview of Windows Presentation Foundation

The architecture of WPF is actually a multilayered architecture. It has mainly three layers, the WPF Managed Layer, the WPF Unmanaged Layer and the Core operating system element, basically these layers are a set of assemblies that rovide the entire framework.

The major components of WPF are illustrated in the following WPF diagram:

WPF Components

Now I will explain each layer one by one.

Managed Layer

The Presentation Framework, Presentation Core and Window Base are the three major components of the Managed Layer. These are the major code portions of WPF and plays a vital role in an overview of Windows Presentation Foundation. The public API exposed is only via this layer. The Major portion of the WPF is in managed code.

UnManaged Layer

Core operating System Layer (Kernel)

This layer has OS core components like User32, GDI, Device Drivers, Graphic cards and so on. These components are used by the application to access low-level APIs.