1、在这些组件中,只有一个是非托管组件 milcore。milcore 是以非托管代码编写的,目的是实现与 DirectX 的紧密集成。WPF 中的所有显示是通过 DirectX 引擎完成的,可实现高效的硬件和软件呈现。WPF 还要求对内存和执行进行精确控制。milcore 中的组合引擎受性能影响关系大,需要放弃 CLR 的许多优点来提高性能。在WPF中常用的的控件类继承结构如下图所示: System.Object类:在.Net中所有类型的根类型 System.Windows.Threading.DispatcherObject类:WPF 中的大多数对象是从 DispatcherObject 派生
2、的,这提供了用于处理并发和线程的基本构造。WPF 基于调度程序实现的消息系统。 System.Windows.DependencyObject类:表示一个参与依赖项属性系统的对象。 System.Windows.Media.Visual类:为 WPF 中的呈现提供支持,其中包括命中测试、坐标转换和边界框计算。 System.Windows.UIElement类:UIElement 是 WPF 核心级实现的基类,该类建立在 Windows Presentation Foundation (WPF) 元素和基本表示特征基础上。 System.Windows.FrameworkElement类:为
3、Windows Presentation Foundation (WPF) 元素提供 WPF 框架级属性集、事件集和方法集。此类表示附带的 WPF 框架级实现,它是基于由UIElement定义的 WPF 核心级 API 构建的。o System.Windows.Controls.Control类:表示 用户界面 (UI) 元素的基类,这些元素使用 ControlTemplate 来定义其外观。 System.Windows.Controls.ContentControl类:表示包含单项内容的控件。 System.Windows.Controls.ItemsControl类:表示一个可用于呈现项
4、的集合的控件。 System.Windows.Controls.Decorator类:提供在单个子元素(如 Border 或 Viewbox)上或周围应用效果的元素的基类。 System.Windows.Controls.Image类:表示显示图像的控件。 System.Windows.Controls.MediaElement类:表示包含音频和/或视频的控件。 System.Windows.Controls.Panel类:为所有 Panel 元素提供基类。使用 Panel 元素在 Windows Presentation Foundation (WPF) 应用程序中放置和排列子对象。 System.Windows.Sharps.Sharp类:为 Ellipse、Polygon 和 Rectangle 之类的形状元素提供基类。详细的有关WPF的控件类及其使用请参考MSDN文档。