WPF体系结构图:
- PersentationFramework.dll包含WPF顶层的类型,包括哪些表示窗口、面板以及其他类型控件的类型。他还实现了高层编程抽象,如样式。开发人员直接使用的大部分类都来自这个程序集
- PresentationCore.dll包含了基础类型,如UIElement类和Visual类,所有形状类和控件类都继承自这两个类。如果不需要窗口和控件抽象层的全部特征,可以使用这一层,并且仍能用WPF的渲染引擎。
- WindowsBase.dll包含了更多基本要素,这些要素具有在WPF之外重用的潜能。
- milcore.dll是WPF渲染系统的核心,也是媒体集成层的基础。
- WindowsCodes.dll是一套提供图像支持的低级API(例如,处理、显示以及缩放位图与JPEG图像)
- Direct3D是一套地基API,WPF应用程序中的所有图形都是由它渲染
- User32用于决定哪些程序实际占有桌面的哪一部分。
WPF类层次结构图:
1.System.Threading.DispatcherObject类,通过继承此类,用户界面中的每个元素都可以检查代码是否在正确的线程上运行。
2.System.Windows.DependencyObject类,提供对依赖属性的支持。
3.System.Windows.Media.Visual类,每个元素本质都是一个Visual对象,封闭绘图指令、绘画额外细节。
4.System.Windows.UIElement类,提供WPF本质特征的支持,如布局、输入、焦点、及事件。
5.System.Windows.FrameworkElement类,是 WPF 框架级元素类,提供数据绑定、动画及样式的支持。
6.System.Windows.Controls.Control类,为字体、前背景色及模板提供支持。
7.System.Windows.Controls.ContentControl类,所有具有单一内容类控件的基类。
8.System.Windows.Controls.ItemsControl类,所有显示选项集合控件的基类。
9.System.Windows.Shapes.Shape类,基本形状类继承于此类。
10.System.Windows.Controls.Panel类,所有布局窗口的基类。
其他继承关系和具体内容参考: https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.threading.dispatcherobject?view=netframework-4.8