zoukankan      html  css  js  c++  java
  • WPF学习01——体系结构

       关系图中的PresentationFramework、PresentationCore 和 milcore是 WPF 的主要代码部分。在这些组件中,只有一个是非托管组件– milcore。milcore是以非托管代码编写的,目的是实现与DirectX 的紧密集成。WPF中的所有显示是通过 DirectX 引擎完成的,可实现高效的硬件和软件呈现。WPF还要求对内存和执行进行精确控制。milcore中的组合引擎受性能影响关系大,需要放弃CLR 的许多优点来提高性能

    WPF基本控件集合的类层次结构

    WPF类层次中主要包括:
    System.Threading.DispatcherObject、
    System.Windows.DependencyObject、
    System.Windows.Media.Visual、
    System.Windows.UIElement、
    System.Windows.FrameworkElement
    System.Windows.Controls.Control。

    这些内容与PresentationFramework、PresentationCore有关,其中FrameworkElement和Control属于PresentationFramework,其余的类属于PresentationCore。


    下面简单说明一下这些类,建议读者在了解类的同时,要注意它们之间的交互关系:

       System.Threading.DispatcherObject WPF中有许多类继承自DispatcherObject,DispatcherObject提供了处理同步和并发的基本构造。WPF建立在dispatcher提供的消息系统之上。它的工作方式很像win32中的消息泵;事实上,WPF的dispatcher使用User32消息来实现线程间调用。

        System.Windows.DependencyObject 构建WPF的一个主要思想是属性优先于方法和事件。属性是声名性的,并且能够更方便实现开发人员。WPF提供了丰富的属性系统,其核心是DependencyObject。它的基础是属性表达式。属性系统提供对属性的稀疏保存。

       System.Windows.Media.Visual Visual是一个抽象类,每个FrameworkElement对象都必须继承该类。该类的主要作用是为WPF提供呈现支持,主要包括输出显示,坐标转换,区域剪切等。以用户界面控件(例如Button,TextBox)为例,这些控件都继承Visual类,并使用该类定义的属性实现所呈现数据的持久化。

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

        System.Windows.FrameworkElement FrameworkElement类是连接Framework层次类与Core层次类的连接点。该类不仅继承了UIElement类,而且还添加了一些功能,例如,布局定义、逻辑树、对象生命周期事件、支持数据绑定和动态资源引用、支持样式和动画。

        System.Windows.Controls.Control Control是创建自定义应用程序控件的基类。开发人员可通过重写Control类所提供的属性,方法,事件等,为自定义控件添加自定义逻辑。

       相信以上内容对于读者了解WPF类会有一定帮助,但是只了解这些是显然不够的。作为一名合格WPF开发人员,必须熟悉其他细小,更为常用的WPF类。 

  • 相关阅读:
    【crontab】误删crontab及其恢复
    New Concept English there (7)
    New Concept English there (6)
    New Concept English there (5)
    New Concept English there (4)
    New Concept English there (3)
    New Concept English there (2)Typing speed exercise
    New Concept English there (1)Typing speed exercise
    New Concept English Two 34 game over
    New Concept English Two 33 94
  • 原文地址:https://www.cnblogs.com/SFAN/p/2743755.html
Copyright © 2011-2022 走看看