WPF的应用可以帮助我们实现以前难以想象的一些图形界面的开发。通过对WPF的深入了解,可以知道,WPF主要包括三个部分:PresentationFramework、PresentationCore和milcore。其中前两者由受管模块组成,而milcore是非受管模块。如图1显示了WPF体系架构。
图1WPF体系架构中所示红色部分显示了构成WPF主要的组件。让我们由下向上的说明。#t#
最底层是Kernel,它负责控制和管理与图形驱动相关的最底层任务等。在Kernel之上也是两个比较底层的模块。其中,User32负责确定显示窗口及其在屏幕中的位置状态等,其并不参与常见控件的呈现。DirectX负责呈现窗口和内容等。
milcore是WPF的核心部分,它主要起到中间人的作用,以实现WPF与DirectX的通信。再向上是.NET 3.0的公共语言运行时CLR(Common Language Runtime)。最高层是WPF的另两个核心PresentationFramework和PresentationCore,它们都是受管模块。前者主要包括WPF的窗口、面板、样式等高层WPF类型。后者主要包括WPF的一些基本类型,例如UIElement,Visual等。它们是PresentationFramework所包括元素的基类。
WPF体系架构中的三个核心部分分别对应一些动态库,例如PresentationFramework.dll、PresentationCore.dll和milcore.dll。这些动态库中包含了众多实现WPF核心功能的类和命名空间。