精华内容
下载资源
问答
  • WPF 优势是什么

    千次阅读 2014-01-11 19:16:08
    WPF优势(1)文档的变革。之所以称其为“变革”,因为它不仅可以使用传统的屏幕显示/打印文档(XPS),而且还可以使用 FlowDocument 标记来显示流文档。文档中不仅可以有文字、图片、链接,还可以有三维动画、视频...
    WPF优势(1)文档的变革。之所以称其为“变革”,是因为它不仅可以使用传统的屏幕显示/打印文档(XPS),而且还可以使用 FlowDocument 标记来显示流文档。文档中不仅可以有文字、图片、链接,还可以有三维动画、视频等。

    试想一下,在某个重要的日子,当你将所有与他/她在一起时浪漫的照片、温馨的视频、甜蜜的话语,加上潇洒的签名,发挥你丰富的想象力,做成一个动感十足的动画,或是丰富趣味的互动游戏,将之保存为一份多媒体文档,在恰当的时间,利用恰当的机会,把它送给他/她的时候,他/她看到之后又是怎样一种感觉呢?在恰当的时间、恰当的地点,由恰当的人,做出恰当的事,这就是最“恰当不过”的了!

    WPF优势(2)图形:WPF 支持创建二维和三维矢量图形。对于二维图形,WPF 提供标准抽象,例如,形状、画笔和绘图笔,同时还允许三维图形定义模型,以用于指定光线和摄像机位置信息。与早期技术(GDI, GDI+)不同的是,WPF 图形并不是使用开发人员所必须了解的单独一组概念进行图形图像绘制,用于图形描述的XAML元素能够与那些用户界面其他元素自然组合。比如按钮,可以是文字,也可是带图形和文字的组合,还可以有更多功能。

    WPF优势(3)图像:WPF使用 XAML 的图像标记,可在应用程序中显示不同格式的图形,包括 JPEG,GIF,PNG及其他格式。WPF依靠WIC(Windows Imaging Component) 为编解码器,以及显示和存储图像的软件提供标准框架。在 WPF 中,通常图像元素可以与其他元素组合,比如按钮,可以显示为图像按钮而不是简单的文本标签。

    WPF优势(4)多媒体视频及音频:WPF可使用MediaElement 标记来显示不同格式的视频和音频,包括 WMV、AVI 和 MPEG等。同样,此元素也可与其他 XAML 元素相组合,更让人称奇的是,你甚至可以使三维立方体的所有侧面上都显示视频。继续发挥你的想像力,你可以让它们动起来,比如3D旋转,拖动或缩放某一侧面,或是做出你要的效果。在这个世界里,你可以真正做到“人有多大胆,地有多大产”。

    WPF优势(5)动画:WPF 提供动态显示绝大部分用户界面的内置支持。例如,放大和缩小矩形、更改按钮大小。与Adobe Flash中时间线类似,你还可以定义包含时间线的情节提要,也可以调整动画的发生顺序。

    WPF优势(6)数据绑定:基于多数程序都需要显示数据,因此,WPF提供将数据映射到用户界面元素的自动支持功能。类似asp.net的方式, WPF 可为包含在对象和其他源中的信息提供数据绑定,而且还允许在显示数据前对其进行排序和筛选。

    展开全文
  • 我们先说WPF出现的目的,一门技术出现不是凭空出现的,一定有目的的,一定为了解决一种问题而应运而生的。 WPF咱们先从它的全称去字面上理解它的含义,Windows Presentation(图像) Foundation(基础),大家...

       我们先说WPF出现的目的,一门技术出现不是凭空出现的,一定是有目的的,一定是为了解决一种问题而应运而生的。

       WPF咱们先从它的全称去字面上理解它的含义,Windows Presentation(图像) Foundation(基础),大家从字面上就可以看到其实它是创建一个统一的界面呈现平台,而它的目的就是替代微软现有的UI平台,举个例子吧,还是那句话例子最能说明问题,也最易于理解,Windows7操作系统的界面替代了WinowsXP操作系统老式的界面,因为Windows7的界面就是WPF开发的,好了现在知道了它出现的目的了。

       那我们学习了这门技术能做什么呢和它与其他技术有什么不同呢?
       1:打造一个“富客户端 富表现力”的平台
       就是你可以把一个触发事件的简单按钮都可以做的很炫,比如:做成3D效果。

       2:引入了XAML标记语言将设计和开发分开
       这个问题我在:跟我一起走进WPF的世界之二为什么会出现XAML这个标记语言里解释的很清楚了

       3:统一Web开发和桌面开发的界面描述方式,模糊了两者应用程序的界限
       这个问题我在:跟我一起走进WPF的世界之二为什么会出现XAML这个标记语言里解释的很清楚了

       4:硬件加速
       WPF的渲染是依赖于DirectX的,因此WPF应用程序可以获得更好的图像效果和更好的性能。

       5:与分辨率无关
       我之前做过一个Winform应用程序,在我个人的电脑上是界面显示正常,安装到我同事的电脑上就只显示95%,有5%显示不出来,我于是把我同事的分辨率调高了,结果显示正常了,但是我同事说他眼睛不好,分辨率高了图像太小他看不清楚,我就碰到这样的尴尬。还好出现了WPF,它的默认单位是1/96英寸,从而保证无论在任何显示器上,输出保持大小一致。

    展开全文
  • 什么是WPFWPF,Windows Presentation Foundation也,译过来就是“Windows呈现基础”,你看它的目的非常明确,就是用来把数据“显示”给用户看的(说白了就是用来UI的)。如果只是给用户显示几串文本、两三张...

    什么是WPF:
    WPF,Windows Presentation Foundation也,译过来就是“Windows呈现基础”,你看它的目的非常明确,就是用来把数据“显示”给用户看的(说白了就是用来做UI的)。如果只是给用户显示几串文本、两三张图片或者几个表格那WPF就太糗了,幸乎,WPF可不是这等素食动物——大家都见过Flash动画吧,WPF的显示能力丝毫不亚于Flash以及Flash的同门师弟Flex+AIR(某建筑公司产品)。

    为什么会有WPF:
    “微软出点儿什么新东西,我就得跟着跑!”我也曾这样抱怨过。不过,当大量的工作任务压在头上的时候,我终于感觉到——每一次技术(包括理念、架构、语言、工具)的更新都带来了巨大的工作效率提升。的确,我们需要花些时间来搞懂那些看起来乱糟糟的新概念,但搞明白之后——坦白地讲,在有人带的情况下,这并不是什么难事——我们就能用非常少的代码来换取先前技术大量代码才能获得的功能。似乎代码量是开发团队中一切糟糕问题的罪魁祸首,所以,明白了?

    对于WPF是如何减少代码量的,后面有一个例子。但WPF绝不是一个只能帮我们减少代码量的家伙,更重要的是,它还能帮我们把程序的界面和功能逻辑近乎彻底地剥离——in a nutshell,把你的程序变成一只香蕉或者橘子——“皮”是可以从“瓤”上剥下来的,一旦某天用户说:“这个橘子能不能看起来像是个香蕉?”你就可以为你的橘子瓣儿裹上漂亮的进口香蕉皮再开出一个更漂亮的价码。

    WPF是怎样做到的:
    使用WPF技术开发产品,程序的“皮”,也就是UI,是使用XAML语言来“画”出来的;而程序的“瓤”,也就是功能逻辑,可以由程序员来选择使用C#/VB.NET/C++.NET等托管语言来实现。

    对于程序员们来说,C#/VB.NET/C++什么的已经是耳熟能详。XAML是什么呢?简言之,XAML(读音为“zamel”,近似于“咋没有”)是XML语言的一个衍生物,它的语法基本上与XML语言完全一致;它的功能就是专门用来设计和实现程序的UI;它看起来和HTML语言非常像,无论你是程序员还是美工人员,只要你设计过网页,那学习XAML对你来说都是小菜一碟儿。而且,XAML可不像HTML和XHTML那样只能呆在Web开发领域——XAML对于Web开发和桌面开发是“通吃”的,从Web程序改成桌面程序或者反过来,所付出的工作量惊人的小,而且由于UI与逻辑完全分离,逻辑代码几乎不用改动——这意味着两种开发的边界渐渐消失,两类设计人员和程序员将会染指“彼岸”、拿到更多的项目、挣更多的钱。

    WPF之前,无论是Win32 API编程、使用MFC编程还是Windows Form编程,美工(设计人员)设计出来的界面都需要由程序员使用Visual Studio来实现。程序员不是美工,VS也干不过PS……越俎代庖永远是高效分工的大敌。如今,为了支持WPF程序设计,微软推出了专门的、使用XAML语言进行UI设计工具——Expression Studio,使用它就像使用PhotoShop和Dreamweaver一样,设计出来的结果保存为XAML文件,程序员可以直接拿来用;当UI有变更时,程序员只消用新版XAML文件替换旧版即可。

    XAML小试牛刀
    让我们实现这样一个小小的需求,完全使用XAML代码而不需要C#来参与。用户需要一个窗口,里面有一个TextBox和一个Button,并且窗口的背景是蓝色的过渡色。
    在这里插入图片描述
    我保证:真的一行C#代码都没写!是不是足以让Windows Form程序员艳羡不已?!
    一切实现都是使用XAML语言完成的——你可以使用Visual Studio 2008的XAML设计器来完成,也可以使用Expression Studio来更专业地完成设计。
    在这里插入图片描述
    咱们再来一个例子:这回的需求是这样的——UI上有一个TextBox和一个Slider,要求Slider的滑块滑动时TextBox的文本显示Slider的值;当TextBox里的文本改变时,就让Slider的滑块与之同步。
    对于一个有经验的Windows Form开发老手来说,他的思路是这样的:
    在UI上拖放控件
    为Slider的ValueChanged事件添加响应函数(事件处理函数),函数中将Slider的Value属性(double类型)转换成一个string类型的值并赋给TextBox的Text属性。
    为TextBox的TextChanged事件添加响应函数,对TextBox的Text属性进行检验,看看它是否能解析为一个double值(新手常常忘记这一点而导致bug)并且落在Slider的取值范围内,如果一切顺利,就把它赋给Slider的Value属性。
    Now,你是一个WPF新手,但你可以做的比一个Windows Form老手还好!请打开Visual Studio 2008,新建一个WPF Application,然后把下面的代码copy到XAML设计器里。
    在这里插入图片描述
    看你,你也可以一句C#代码都不写就完成漂亮的程序!
    在这里插入图片描述
    我猜已经有同学开始“晕代码”了。完全没有必要!这些代码80%都是VS自动生成的,而且它们的结构的非常简单——箱子里装着一个口袋,口袋里装着两个核桃。上面这段程序最重要的一句就是:
    在这里插入图片描述
    即可以说它是WPF最精华的部分,也可以说它是与Windows Form开发相比变化最大的地方,它就是——Data Binding(数据关联)。

    展开全文
  • 什么是WPF

    千次阅读 2006-11-23 15:00:00
    下面这些从别人的blog中转过来的,(原文地址...111.entry)What is WPF最近和一些同学一起吃饭, 大家问我在做什么东西。我说在做WPF(Avalon)上的control , 结果没人听说过WPF:-(。问我什么是WPF, 这可真把我难住了,

    下面这些是从别人的blog中转过来的,

    (原文地址:http://baishi9411.spaces.live.com/blog/cns!9198d7311eda82b4!111.entry

    What is WPF

    最近和一些同学一起吃饭, 大家问我在做什么东西。我说在做WPF(Avalon)上的control , 结果没人听说过WPF:-(。问我什么是WPF, 这可真把我难住了,我一般的回答“WPF有点象WinForm的下一代产品”,不过这显然和WPF实际的定义差别很大。虽然做了这么长时间,还真没法给一个很清楚明白的解释。今天在网上查了一下,我想下边这个应该算是对WPF/Avalon一个比较准确的定义吧。

    The Microsoft Windows Presentation Foundation (formerly code named "Avalon") provides the foundation for building applications and high fidelity experiences in Vista, blending together application UI, documents, and media content, while exploiting the full power of your computer. The functionality extends to the support for Tablet and other forms of input, a more modern imaging and printing pipeline, accessibility and UI automation infrastructure, data driven UI and visualization, as well as the integration points for weaving the application experience into the Windows shell.

     

    WinFX是下一代的Windows API,而WPF将是WinFX的核心一部分,用于处理UI, Document, Media和用户交互。

     

    微软关于WPF的网站:http://msdn.microsoft.com/windowsvista/building/presentation/

    最新2月份的用户预览版可以从这里下载: http://msdn.microsoft.com/windowsvista/getthebeta/default.aspx

    msdn上有两个WPF讨论组:

    1) http://forums.microsoft.com/msdn/ShowForum.aspx?ForumID=119

    2) http://msdn.microsoft.com/newsgroups/default.aspx?dg=microsoft.public.windows.developer.winfx.avalon&lang=en&cr=US

     

    另外还有几个关于WPFBlog:

    http://blogs.msdn.com/tims/ TimSneathBlog

    http://blogs.msdn.com/atc_avalon_team/default.aspx 这是微软工程院Avalon组的Blog

    http://blogs.msdn.com/okoboji/ Kevin Moore (WPF PM)blog

    http://blogs.msdn.com/tims/articles/475132.aspx Tim Sneath给了一个WPF相关Blogger的列表

    http://microsoft.sitestream.com/PDC05/ PDC05的一些Talk和Demo

     
    展开全文
  • 本文我在读 WPF 源代码的笔记
  • 今天小伙伴问我一个问题,说为什么相同的代码,如果设置到按钮上,可以让按钮的某个属性变更,但是如果设置给 TranslateTransform 的 X 或 Y 就不会有任何值变更 在 WPF 中,通过 官方文档 里面的描述,对于 ...
  • 什么是WPF WPF,Windows Presentation Foundation也,译过来就是“Windows呈现基础”,你看它的目的非常明确,就是用来把数据“显示”给用户看的(说白了就是用来UI的)。如果只是给用户显示几串文本、...
  • wpf做的3d滑动gallery

    2015-04-22 01:39:00
    wpf做的3d滑动gallery ...随着iphone\ipad的流行及热捧,现在移动产品不管是什么平台的,领导总想成像ios系统的样子。自从微软发布了window8预览版之后,领导就想着把公司的移动产品移殖到windo...
  • 什么是WPF? 秒懂 !

    2017-07-18 13:14:00
    一開始听到WPF。认为非常陌生。在百度百科等地方看完简单介绍之后。... 微软退出WPF为了让桌面应用更加美观。我觉得当中增加了非常多B/S模式的理念。尤其样式的控制方面。当然,各种控件仍然我...
  • 本文我在读 WPF 源代码的笔记 通过 WPF 的架构文档可以了解到在 WPF 里面的架构如下图 这里有一层很重要的一层 MilCore 层,这一层将会沟通 DirectX 和 托管层,而这一层在用户端的逻辑就放在 wpfgfx_cor3...
  • wpf 怎么手机倒计时

    2020-01-07 18:11:00
    这样,还谈什么mvvm。 先说下思路。wpf 我们开发已经百分百都分层结构了。还想在按钮事件下撸代码。怎么可能! 倒计时:触发---倒计时--返回触发当时模块; 方法: 1.通过回调监听事件的动作 代码 xaml ...
  • 最近要数据可视化,如果公司的构架BS,那么我毫不犹豫的使用Echart(个人觉得hightchart更规范成熟,但是收费先不考虑)。但是目前公司的软件的构架还是CS模式,所以再考虑数据可视化时,就有些犹豫。 我主要...
  • 我们之前在WPF文本(1)-当显示文本时我们到底在做什么(1)_wpf,c#_黄腾霄的博客-CSDN博客介绍过,文本渲染需要经历找字符、measure、arrange、render过程。这里我们统一介绍measure和arrange过程(Layout过程) Layout...
  • WPF核心模板

    2011-12-09 15:40:00
    WPF UI怎么那么难?...细细算来也,我一开始做WPF应用程序的时候,就为一个分页控件,找遍了国内外网站,都很不如意。最后一咬牙一跺脚,自己搞了!呵呵。 WPF UI为什么模板那么重要? 既...
  • wpf的控件style

    2017-08-22 10:35:00
    很多控件不知道他的controltemplate是什么样的 为了方便大家写style 特别奉上wpf的style大全 从此,妈妈再也不用担心我的wpf,哪里不会点哪里,so easy! 下载地址wpf controltemplate demo Shared in all ...
  • WPF

    千次阅读 2009-06-21 21:31:00
    最近从同事那里借了本WPF的书,看了看WPF,挺简单的,确实很简单,概念很简单,实现很简单,没有什么再简单了。这就是伟大——将复杂的事情用简单的体系去描述。游戏开发的人或多或少可能都有点对商业软件不太重视...
  • 这个系列将会介绍什么是文本的一些逻辑,以及如何利用我们的WPF现有接口,对文本进行最大程度定制化。 首先我们要明确,对于软件布局渲染来说,无论文本,图片还是其他控件,其根本操作都在指定区域显示指定...
  • 我的wpf学习

    2019-02-09 13:55:58
    前端用到的技术是Wpf,后端的技术wcf, 前端的技术,视频看完了,但我审美太差,而且总是不敢上手尝试,所以在wpf上一直没有什么自己的东西。 Wcf在网上查找了很多小例子,但自己高不成低不就,小的例子觉得用不上,...
  • 看见园子里有兄弟在讨论到关于WPF/SL中的属性的问题,比如: “为啥flex可以直接对控件的...可能大家大多就是在用WPF或者SL就是界面,因此首先比较关心界面布局的问题,我就先以WPF的layout为例解释一些用法。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 627
精华内容 250
关键字:

wpf是做什么的