ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

WPF是什么

2021-05-25 14:59:20  阅读:176  来源: 互联网

标签:用户界面 微软 Windows 什么 应用程序 WPF 3D


WPF: (Windows Presentation Foundation)

概念: 是美国微软公司推出.NET Framework 3.0的组成部分之一,它是一套基于XML、.NET Framework、向量绘图(vector graphic)技术的展示层(presentation layer)开发框架 UI框架

描述: 微软视其为下一代用户界面(user interface)技术,将广泛被用于下一代的Windows平台 (Windows Vista)的界面开发。其原来代号为“Avalon”,因“我佩服”拼音首字母组合一样,国内有人 调侃地称之为“我佩服”。

原理: WPF使用一种新的XAML(eXtensible Application Markup Language)语言来开发界面

优势: 将把界面开发以及后台逻辑很好的分开,降低了耦合度,使用户界面设计师与程序开发者能更好的合作,降低维护和更新的成本。

WPF/E :(Windows Presentation Foundation Everywhere)

概念
WPF/E :是WPF的子集合,在基于XAML与JavaScript之下,可跨越各种平台,目前 WPF/E 已演化为 Microsoft Silverlight,担负微软在 RIA (Rich Interactive Application, Rich Internet Application) 领域,并正面与 Adobe Flash 竞争的产品。

趋势
目前开发界的对WPF响应程度 目前已有很多人开始考虑或者已经转向WPF,一场新的学习热潮已经开始。但根据我最近的学习和了解,国内关于WPF的资料很少,除了msdn提供的资料以外,基本都是来自国外的资料,有些则是国外开发人员blog上的资料,当然都是英文的。因此如果现在能够引进一些WPF的书绝对是很好的时机。而且国外目前的几本WPF书也是刚刚上市,如果我们可以尽快引进的话,绝对可以帮助国内开发人员在最短时间内赶上国际步伐。 目前国内即时通讯领导商腾讯Tencent已经发布了一款基于WPF的QQ 概念版(QQ 概念版:QQ 概念版应用微软最新一代客户端展现层技术(WPF),实现多点触摸操作,是腾讯首款NUI(自然用户交互)产品,推出了动感相框、动态背景、多Tab聊天窗口、3D交互、桌面好友等一系列新功能,为您打造完美尊贵的新体验。),带给网友全新的体验;由于该产品还处于初期,许多功能都还有待完善,不过QQ概念版的出现,又让即时通讯领域带来了新的体验与享受。

WPF 部份之特征如下:

  1. [编辑] 绘图服务 所有的图形皆可由Direct3D产生。 目标在于统一各种显示图形。 Windows可以通过Direct3D 来减轻在绘图任务上的负荷,这项技术乃基于计算机显卡的绘图处理单元(Graphics Processing Unit)。

2.支持向量绘图(vector graphic)。 支持3D透视图并且影响2D应用程序。

3.[编辑] 互操作性 WPF可与Win32互相操作:经由主导(hosting)机制,可以在Win32码之下使用 Windows Presentation Foundation,或是在Windows Presentation Foundation环境下使用Win32代码[1]。
注: Windows Forms 的互操作性亦可利用 ElementHost(继承自System.Windows.Forms.ContainerControl)以及 WindowsFormsHost(继承自System.Windows.Forms.Integration)等类达成,同时提供了Host Avalon Element的能力。

  1. [编辑] 布署 WPF 不仅仅是建立传统的独立程序(standalone applications)。其部署方式可分成两类:standalone ?与XAML Browser Applications(XBAP]])观点?。这些布署方式在程序的撰写上大致类似。 独立程序之安装方式可以借由 ClickOnce 或微软安装器(MSI)完成。独立程序可被视为完全信任(full trust)具有完全访问系统资源的优点。 XAML Browser Application(XBAPs)是一种寄宿于网页浏览器上的程序,像是Internet Explorer。寄宿的程序可取得部份信任(partial trust)的沙箱(sandbox)环境之下,且无法取得完整的系统资源,WPF的功能亦无法完全发挥。寄宿的环境必须有意地防卫恶意的代码。从网页上运行XBAP(读音 “ex-bap”)必须是毫无破绽的(没有安全性或安装提示)。虽然这样的寄宿程序在感观上与传统微软的DLL(out of process)有相异处。

  2. [编辑] 媒体播放 WPF 针对2D图形提供形状基元(shape primitives),内置笔刷(brushes)、画笔(pens)、几何(geometries),与变形(transforms)。 WPF 以Direct3D提供完整的3D功能。但是,WPF 提供更完整的集成性在于用户界面上(UI)、文件(documents),与媒体(media)。这使得尽可以实现 3D UI, 3D 文件,和 3D 媒体。 支持了大量的图片格式(image formats)。 WPF 支持大量影音格式,如: WMV,MPEG 以及某些 AVI 档。

  3. WPF 支持以时间为基础的动画效果,不同于以影格为基础的处理方式。如此动画的速度与系统效能就不会有所关连。

  4. 文件的体现支持ClearType,这提供一种次像数(sub-pixel)定位功能,强化其自然风格。

8.WPF 同时支持 OpenType字体样式。

  1. [编辑] 数据链接 WPF 有内置数据服务结合,可以让应用程序发展者在应用程序内链接并处理数据。一共有三种数据链接方式: one time:客户端(client)必须忽略服务端(server)的更新动作。 one way:客户端仅被准许读取数据(read-only)。 two way:客户端可读取并读进服务端。 数据链接在展示层并无太大负担。WPF 提供有数据样板(data templates)来控制这些数据。

10.[编辑] 用户界面 WPF提供了内置元件控件集合,包括有按钮(button)、菜单(menu)、列表盒(list box)。内置元件缺乏DataGrid但第三协力厂商已有支持。 WPF 的逻辑层与外观展示层已形成强力的分离模式。 元件的外貌样品可以被完全改写。

  1. [编辑] 文件 对OpenType 的支持包括: 缚(Ligatures) 旧式数字(Old-style numerals) (for example, parts of the glyph hang below the text baseline) Swash variants 碎形(Fractions) Superscript 及 Subscript Small caps

12.[编辑] 工具 在以往 Win32 应用程序发展时,绝大多数的工作都由开发人员 (Developer) 来处理,美术设计人员 (Designer) 可以涉入的相当有限,而且在 Win32 API 时代,要在用户界面中实现特效的话,都需要撰写大量的代码才可以做到。 在WPF 中,因为大多数的用户界面元素都可以利用 XAML 来声明,因此微软试着要将 Designer 和 Developer 结合在一起,如此可以让 Designer 可以充份发挥,并且 Developer 也不用伤脑筋在外观设计上,微软的 Designer 工具为 Microsoft Expression 产品集,其中的 Expression Blend 即为设计 WPF 应用程序的设计工具,它也可以用来设计 Silverlight 程序。 开发人员仍然可以使用 Visual Studio 来发展 WPF 应用程序,在 Visual Studio 中内含 WPF Designer 可供开发人员使用。

  1. [编辑] WPF/E 主条目:Silverlight WPF/E 发展初期为微软计划将 WPF 推向各平台的计划,目前此计划已经被发展成为 Silverlight 技术。

标签:用户界面,微软,Windows,什么,应用程序,WPF,3D
来源: https://blog.csdn.net/qq_42848534/article/details/117256062

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有