简介

一、   WPF产生的背景

因为人们的生活水平不断提前,审美观也随着提升,而软件的应用发展水平目前无法赶上大家的审美观和使用要求;比如:像电影中的软件能够方便的使用,而且有动态的效果同时附加形象的声音;而且采用GDI/GDI+开发炫一点的产品,成本很高,为了解决此问题,微软推出了一套解决方案WPF;WPF是基于Directx上开发的,使用的图形是矢量图,所以达到分辨率无关;

二、   概念

Windows Presentation Foundation (WPF) 是一种 UI 框架,可创建丰富的交互式客户端应用程序;WPF是.NET Framework的一个子集;

三、   新特征

可扩展标记语言、逻辑树、可视化树、资源、样式、模板、依赖属性、附加属性、命令、绑定、路由事件、附加事件、动画、转换、2D、3D;

四、   WPF优点

1)   降低了开发和维护成本,因为外观特定的标记并没有与行为特定的代码紧密耦合。 --个人理解,体现在换样式及模板上,比如需求要修改某控件显示风格,这时可以避免整套代码(某模块)进行重新开发,只需要动态更换模板或样式;

2)   开发效率更高,因为设计人员可以在开发人员实现应用程序行为的同时实现应用程序的外观。  -- 说是这样说,但是真正开发的时候,都是设计者做出原型图,开发者开发,然后设计者再进行美化,目前还未达到这个水平;

3)   多种设计和开发工具支持XAML -- 体现在设计者(图形界面设计者)和开发者(代码逻辑实现者)能够使用自己擅长开发工具,比如设计者习惯用Blend,而开发者习惯用VS2012,从而提高开发效率;

4)   WPF 应用程序的全球化和本地化得以大大简化 -- 目前对全球化、本地化没有太多接触,不发表意见;

5)   加入了DirectX,图像处理能力强;

五、   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进行对比】;

WPF 简介的更多相关文章

  1. WPF简介:VS创建桌面应用程序

    1.简介 1/ 什么是WPF WPF,Windows Presentation Foundation也,译过来就是"Windows呈现基础",你看它的目的非常明确,就是用来把数据& ...

  2. MFC,QT与WinForm,WPF简介

    编程语言的组成编程语言做为一种语言自然和英语这些自然语言有类似的地方.学英语时我们知道要先记26个字母,然后单词及其发音,接下来就是词组,句子.反正简单的说就是记单词,熟悉词法,句法.接下来就是应用了 ...

  3. [WPF系列]基础学习(一) WPF是什么?

    引言 学习之前,我们首先大概了解下WPF诞生的背景以及它所能解决的问题或者新颖之处.WPF作为微软新一代的用户界面技术,   WPF简介 WPF的全称是WindowsPresentationFound ...

  4. WPF编程-WPF体系结构

    WPF简介 Windows Presentation Foundation(WPF)是微软新一代图形系统,运行在.NET Framework 3.0架构下,为用户界面.2D/3D 图形.文档和媒体提供 ...

  5. WPF教程一:基础

    一.WPF简介WPF:WPF即Windows Presentation Foundation,翻译为中文“Windows呈现基础”,是微软推出的基于Windows Vista的用户界面框架,属于.NE ...

  6. C#用户自定义控件(含源代码)-透明文本框

    using System; using System.Collections; using System.ComponentModel; using System.Drawing; using Sys ...

  7. MVVM模式和在WPF中的实现(一)MVVM模式简介

    MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...

  8. WPF三大模板简介(Z)

    WPF三大模板简介   WPF支持以下类型的模板: (1) 控件模板.控件模板可以将自定义模板应用到某一特定类型的所有控件,或是控件的某一实例.决定控件外观的是ControlTemplate,它决定了 ...

  9. WPF Binding值转换器ValueConverter使用简介(二)-IMultiValueConverter

    注: 需要继承IMultiValueConverter接口,接口使用和IValueConverter逻辑相同. 一.MultiBinding+Converter 多值绑定及多值转换实例 当纵向流量大于 ...

随机推荐

  1. 最简单的用jquery实现动画的跳到顶部和底部

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. 第九篇 ERP实施项目中需求分析及方案设计的通用思路

    顾问实施ERP就好想医生给患者看病抓药,不但具有类似的过程,而且具有其通用的思路. --详见http://bbs.erp100.com/thread-272856-1-1.html 顾问实施ERP就好 ...

  3. 《OD大数据实战》Flume环境搭建

    一.CentOS 6.4安装Nginx http://shiyanjun.cn/archives/72.html 二.安装Flume 1. 下载flume-ng-1.5.0-cdh5.3.6.tar. ...

  4. C# WebBrowser 设置代理完全解决方案

    微软webbrowser控件也就是IE插件,他的所有功能就像IE类似,当然设置也是一样的,下面介绍下webbrowser如何设置代理,可不要用这个对抗广告联盟哦 You can change the ...

  5. Android ListView不响应OnItemClickListener解决办法

    有时候,当ListView中的每一个item是自定义的View时,有可能会导致ListView的OnItemClickListener的listener无法调用,请看如下情况: 如果你的自定义List ...

  6. [swustoj 243] 又是一年CET46

    又是一年CET46(0243) 问题描述 CET46 成绩出来啦,一群学生在谈论他们的成绩.A说他的成绩比B高,B说他的成绩比C低,D说他的成绩和E一样…… 他们当中可能有人在说谎.你的任务就是判断是 ...

  7. Java 图片转换为字符图 CharMaps (整理)

      /* * Java 图片转换成字符图 CharMaps (整理) * * 2016-1-2 深圳 南山平山村 曾剑锋 * * @(#)CharMaps.java 2014/1/16 * 1.这个一 ...

  8. POJ 2983 Is the Information Reliable? 信息可靠吗 (差分约束,spfa)

    题意:有n个站排成一列,针对每个站的位置与距离关系,现有多个约束条件,约束条件分两种:(1)确定的.明确说明站a距离站b多少个单位距离.(2)不确定的.只知道a在b的左边至少1个单位距离.  根据已知 ...

  9. 【英语】Bingo口语笔记(60) - 口语中的浊化发音

  10. Windows Server 2003 激活码及激活方法

    Windows Server 2003 简体中文企业版,真正免激活. CD-KEY:JB88F-WT2Q3-DPXTT-Y8GHG-7YYQY 安装序列号:JCGMJ-TC669-KCBG7-HB8X ...