WPF 的基础的体系结构,所引用的 Assembly 如下图所示:
关系图中的 PresentationFramework、PresentationCore 和 milcore 是 WPF 的主要
代码部分。在这些组件中,只有一个是非托管组件 – milcore。 milcore 是以非托管代码编
写的,目的是实现与 DirectX 的紧密集成。WPF 中的所有显示是通过 DirectX 引擎完成
的,可实现高效的硬件和软件呈现。WPF 还要求对内存和执行进行精确控制。milcore 中
的组合引擎受性能影响关系大,需要放弃 CLR 的许多优点来提高性能。
在 WPF 中常用的的控件类继承结构如下图所示:
System.Object 类:在.Net 中所有类型的根类型
System.Windows.Threading.DispatcherObject 类:WPF 中的大多数对象是从 Dispa
tcherObject 派生的,这提供了用于处理并发和线程的基本构造。WPF 基于调度程序实现
的消息系统。
System.Windows.DependencyObject 类:表示一个参与依赖项属性系统的对象。
System.Windows.Media.Visual 类:为 WPF 中的呈现提供支持,其中包括命中测试、坐
标转换和边界框计算。