WPF简介
WPF是Windows Presentation Foundation的首字母缩写,中文译为“Windows呈现基础”。
WPF是微软的新一代图形系统,为用户界面、2D/3D图形、文档和媒体提供了统一的描述和操作方法。
WPF的核心是一个与分辨率无关并且基于向量的呈现引擎,旨在利用现代图形硬件的优势。WPF通过一整套应用程序开发功能扩展了这个核心,这些功能包括可扩展应用程序标记语言(XAML)、控件、数据绑定、布局、二维和三维图形、动画、样式、模板、文档、媒体、文本和版式。WPF包含在Microsoft .NET Framework中,使能够生成融入了.NET Framework类库的其他元素的应用程序。
WPF的特点
(1)矢量图的超强支持;
(2)灵活、易扩展的动画机制;
(3)WPF为Windows客户端应用程序开发提供了更多的编程增强功能。
WPF的组成结构
WPF由两个主要部分组成:引擎和编程框架。
WPF引擎统一了开发人员和设计人员体验文档、媒体和UI的方式,为基于浏览器的体验、基于窗体的应用程序、图形、视频、音频和文档提供了一个单一的运行时库。WPF使得应用程序不仅能够充分利用现代计算机中现有的图形硬件的全部功能,而且能够利用硬件将来的进步。
WPF编程框架为媒体、用户界面设计和文档提供的解决方案远远超过开发人员现在所拥有的。它的设计考虑了可扩展性,使开发人员可以完全在WPF引擎的基础上创建自己的控件,也可以通过对现有的WPF控件进行再分类来创建自己的控件。WPF编程框架的核心是用于形状、文档、图像、视频、动画、三维以及用于放置控件和内容的面板的一系列控件。
WPF和Silverlight的关系
Microsoft Silverlight的中文名为“微软银光”,它是一个跨浏览器的、跨平台的插件,为网络带来下一代基于.NET Framework的媒体体验和丰富的交互式应用程序。Silverlight提供灵活的编程模型,并可以很方便地集成到现有的网络应用程序中。Silverlight可以对运行在Mac或Windows上的主流浏览器提供高质量视频信息的快速、低成本的传递。
Silverlight的特点
Silverlight是基于浏览器插件的,在浏览器中运行,服务器不需要部署任何环境,其交互式及动画等网页功能比较突出。但是它也类似于Flash应用客户端需要Flash Player一样,Silverlight应用客户端也要安装相应的支持库才能显示。
Silverlight和WPF的关系
Silverlight作为WPF的一个轻量级的精简版本,曾经叫做WPF/E(Windows Presentation Foundation/Everywhere)。其中Everywhere指的是跨平台的意思,使得在每个操作系统中可以运行WPF。
XAML(Extensible Application Markup Language)即可扩展应用程序标记语言,它是一种声明性标记语言。
XAML文档定义类在WPF应用程序中组成窗口的面板、按钮以及各种控件的布局。对图形设计人员来说,不会手动编写XAML,而应该使用图形设计工具Blend;而对开发人员来说使用的则是Visual Studio。
以文本表示时,XAML文件是通常具有.xaml扩展名的XML文件。可通过任何XAML编码对文件进行编码,但通常编码为UTF-8。



