简介框架
1、 WPF产生的背景工具
由于人们的生活水平不断提早,审美观也随着提高,而软件的应用发展水平目前没法遇上你们的审美观和使用要求;好比:像电影中的软件可以方便的使用,并且有动态的效果同时附加形象的声音;并且采用GDI/GDI+开发炫一点的产品,成本很高,为了解决此问题,微软推出了一套解决方案WPF;WPF是基于Directx上开发的,使用的图形是矢量图,因此达到分辨率无关;布局
2、 概念性能
Windows Presentation Foundation (WPF) 是一种 UI 框架,可建立丰富的交互式客户端应用程序;WPF是.NET Framework的一个子集;开发工具
3、 新特征动画
可扩展标记语言、逻辑树、可视化树、资源、样式、模板、依赖属性、附加属性、命令、绑定、路由事件、附加事件、动画、转换、2D、3D;spa
4、 WPF优势设计
1) 下降了开发和维护成本,由于外观特定的标记并无与行为特定的代码紧密耦合。 --我的理解,体如今换样式及模板上,好比需求要修改某控件显示风格,这时能够避免整套代码(某模块)进行从新开发,只须要动态更换模板或样式;orm
2) 开发效率更高,由于设计人员能够在开发人员实现应用程序行为的同时实现应用程序的外观。 -- 说是这样说,可是真正开发的时候,都是设计者作出原型图,开发者开发,而后设计者再进行美化,目前还未达到这个水平;事件
3) 多种设计和开发工具支持XAML -- 体如今设计者(图形界面设计者)和开发者(代码逻辑实现者)可以使用本身擅长开发工具,好比设计者习惯用Blend,而开发者习惯用VS2012,从而提升开发效率;
4) WPF 应用程序的全球化和本地化得以大大简化 -- 目前对全球化、本地化没有太多接触,不发表意见;
5) 加入了DirectX,图像处理能力强;
5、 WPF缺点
WPF性能开销大,特别是加入特效的程序(若是写得很差,很占系统资源);
注:常常有朋友问我WPF是什么,他跟C#有什么关系?,甚至会问WPF跟C#哪一个好?
1) WPF是一个UI框架,C#是微软的一种语言,WPF主要是用于界面开发;
2) WPF采用XAML(可扩展应用程序标记语言)来描述界面布局及呈现,采用C#语言(VB)来实现WPF框架的逻辑处理;
3) WPF跟C#没有直接的关系,他们是不一样层面的东西,不能用来对比,若是非要用来对比,能够拿WPF跟WinForms进行对比;WPF比WinForms多了不少新特性,并且开发和维护(扩展)更方便、更有效率,WPF的呈现(底层渲染)跟WinForms不同;WPF是跟分辨率无关,但WPF的性能开销比WinForms要大【咱们能够写一个简单WPF和WinForms进行对比】;