全面講解WPF體系架構
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核心功能的類和命名空間。