wpf概述
内置硬件加速
winform的渲染使用User32和GDI /GDI+
wpf的渲染使用DirectX,DirectX使用GPU加速
分辨率无关特性
wpf能够根据系统dpi的变化,自动计算出一个合适的窗口大小,包括窗口中的控件,及控件上的文字,所以若界面中使用图片,那么劲量使用矢量图,这样就能在缩小或放大时不失真。
wpf体系结构
整体结构
PresentationFramework.dll PresentationCore.dll WindowsBase.dll --> 托管的 WPF API
|
milcore.dll windowsCodecs.dll ---> 媒体集成层
|
Direct3D User32 -->渲染引擎层
主要类
DispatcherObject---DependencyObject---Visual---UIElement---FrameworkElement---Shape/Contrlo/Panel ----ContentControl---ItemsControl
值得注意的小点
1.任何集成自Visual的类都能在窗口上显示出来。
2.在Windows form中所有的可视化元素都被称为控件,但是在wpf中,情况不一样了,可视化的内容被称为元素(element),只有部分元素是控件(控件是那些能够接收焦点并能与用户进行交互的元素)。
3.令人费解之处在于,许多元素是在System.Windwos.Controls命名空间中定义的,但他们不是继承自System.Windows.Controls.Control类,并且不被认为是控件,Panel类就是其中之一。
4.wpf在.net framework 3.0中被发布。
wpf工具包
wpf.codeplex.com