The Major components of WPF Architecture are
Presentation Framework, Presentation Core and Media Integration Layer. The
architecture divides in three major groups Managed Layer, Media Integration
Layer (Unmanaged code) and Core Operating System.
Managed layer contains WindowsBase, Presentation
Framework and Presentation Core assembly. Media Integration Layer contains
Milcore(Media Integration Library Core) and WindowsCodecs modules and
both are unmanaged code. Media Integration Layer interacts with Direct3D and
Direct3D interacts with Device Driver.
Managed Layer
Presentation
Framework – Holds top level WPF types
includes Window, Controls, Styles, and Layout Panels etc. The code and controls
written in WPF Application is mostly interacting with this layer.
Presentation Core – Holds base types such as UI Element and
Visual. Almost all the controls you are directly interacting with are derived
from these types. Presentation Framework uses most of the types defined in this
layer.
WindowBase: They hold even more basic elements which are
capable of being used outside the WPF environment like Dispatcher.
Unmanaged Layer(milcore.dll)
WindowsCodecs– This
is low level API which gives imaging support in WPF applications. Provides
supports for imaging like image processing, image displaying and scaling etc.
Direct3D – This
layer is used to render graphics created using WPF Applications.
User32:- This provides the
windows look and feel for buttons and textboxes and other UI elements. User32
lacked drawing capabilities.
GDI (Graphics device interface):- Microsoft introduced GDI to provide drawing capabilities. GDI not only provided drawing capabilities but also provided a high level of abstraction on the hardware display. In other words it encapsulates all complexities of hardware in the GDI API.
GDI+:- GDI+ was introduced which basically extends GDI and provides extra functionalities like jpg and PNG support, gradient shading and anti-aliasing. The biggest issue with GDI API was it did not use hardware acceleration and did not have animation and 3D support.
Hi, Nice description about wpf architecture.
ReplyDeleteThanks...
--Aparna
Theosoft