MSDN(Microsoft Developer Network)參考網址:
- 中文http://msdn.microsoft.com/zh-tw/library/ms750441%28v=VS.90%29.aspx
- 英文http://msdn.microsoft.com/en-us/library/ms750441%28v=VS.90%29.aspx
WPF是由PresentationFramework、PresentationCore 和 milcore(mil=Media Integration Layer)三個部分組成,有三個動態連結程式庫 (DLL) :
- C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\PresentationCore.dll
- C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\PresentationFramework.dll
- .NET Framework 3.5 SP1將milcore.dll更改名稱為wpfgfx_v0300.dll,C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\WPF\wpfgfx_v0300.dll
WPF的物件非常有架構(OOP就是這樣啊),我們來看看WPF的類別階層(Class Hierarchy)架構,因為實在是太龐大了,我們只看看10個WPF重要的類別。
比較需要注意到的是DispatcherObject類別,這是WPF的基礎運行原理,可以參閱「執行緒模型」,另外,DependencyObject也是WPF中較特別的一個地方,請參閱「相依性屬性概觀」。
最後,我想介紹FrameworkElement類別,FrameworkElement加入重要的邏輯樹狀結構功能,並且泛生許多你會用到的WPF類別,像是控制項、面板、頁面、圖形等等,FrameworkElement的類別繼承階層架構如下(僅列出重要項目):
- System.Windows.FrameworkElement
- System.Windows.Controls.ContentPresenter
- System.Windows.Controls.Control
- System.Windows.Controls.Decorator
- System.Windows.Interop.HwndHost
- System.Windows.Controls.Image
- System.Windows.Controls.InkCanvas
- System.Windows.Controls.ItemsPresenter
- System.Windows.Controls.MediaElement
- System.Windows.Controls.Page
- System.Windows.Controls.Panel
- System.Windows.Controls.Primitives.Popup
- System.Windows.Shapes.Shape
- System.Windows.Controls.TextBlock
- System.Windows.Controls.Primitives.TickBar
- System.Windows.Controls.ToolBarTray
- System.Windows.Controls.Primitives.Track
- System.Windows.Controls.Viewport3D
補充:
回覆刪除Windows 7的milcore位於
C:\Windows\Microsoft.NET\Framework\v3.0\WPF\wpfgfx_v0300.dll
與
C:\Windows\Microsoft.NET\Framework\v4.0.30319\WPF\wpfgfx_v0400.dll