WPF概述

WPF程序中要用到的主要类的层次关系:

WPF概述_第1张图片

DispatcherObject: 

       WPF中有许多类继承自DispatcherObject,DispatcherObject提供了处理同步和并发的基本构造。
       WPF建立在dispatcher提供的消息系统之上。WPF的dispatcher使用User32消息来实现线程间调用。

DependencyObject :

        构建WPF的一个主要思想是属性优先于方法和事件。WPF提供了丰富的属性系统,其核心是DependencyObject。

Visual:

        该类的主要作用是为WPF提供2D呈现支持,主要包括输出显示,坐标转换,区域剪切等

UIElement:

       该类继承自Visual类,是构建WPF元素和基本呈现特征的基类,其中定义很多与输入和焦点有关的特性,例如键盘事件,鼠标,还包括一些与WPF事件模型有关的API。

FrameworkElement:

        继承了UIElement类,而且还添加了一些功能,例如,布局定义、逻辑树、对象生命周期事件、支持数据绑定和动态资源引用、支持样式和动画

      

        WPF中的控件,图形操作,动画多媒体,以及3D效果就是由下面4个类的派生类来完成的:

  Control:

             是创建自定义应用程序控件的基类。可以重写Control类所提供的属性,方法,事件等,为自定义控件添加自定义逻辑。 构建WPF应用程序页面的window类就派生自它.还有button,TextBox等控件也派生自他。

  ②Shape:

             WPF 中呈现二维矢量图形的基础类。有 Line、Polyline、Polygon、Path、Rectangle 和 Ellipse等子类。可从 Shape 类进行派生以实现自定义矢量图形基元。从 Shape 派生是确保这些自定义基元使用 WPF 布局系统的协议的最简单方法。

  Freezable:

             WPF中对动画和多媒体的操作类,基本上都是派生自它,它实现了多种生成深层克隆的方法。

  ④Visual3D:

             提供可视三维对象通用的服务和属性,其中包括命中测试、坐标转换和边界框计算。与Visual类一样,只不过是3D的基础类.

WPF概述_第2张图片



你可能感兴趣的:(WPF)