Loading AI tools
来自维基百科,自由的百科全书
Windows Presentation Foundation(WPF)是美国微软公司推出.NET Framework 3.0及以后版本的组成部分之一,它是一套基于XML、.NET Framework、向量绘图技术的展示层开发框架,微软视其为下一代用户界面技术,广泛被用于Windows Vista的界面开发。其早期开发阶段的代号为“Avalon”[1]。
WPF使用一种新的XAML(eXtensible Application Markup Language)语言来开发界面。同时WPF自带MVVM(Model-ViewModel-View)框架,这种设计模式将把界面开发以及后台逻辑很好的分开,降低了耦合度,使用户界面设计师与程序开发者能更好的合作,降低维护和更新的成本。
WPF/E是WPF的子集合,全名是:Windows Presentation Foundation Everywhere。在基于XAML与JavaScript之下,可跨越各种平台,目前WPF/E已演化为Microsoft Silverlight,担负微软在丰富互联网应用程序领域,并正面与Adobe Flash竞争的产品。
WPF部分之特征如下:
ElementHost
(继承自System.Windows.Forms.ContainerControl)以及WindowsFormsHost
(继承自System.Windows.Forms.Integration)等类别达成,同时提供了Host Avalon Element的能力。数据绑定是在应用 UI 与其显示的数据之间建立连接的过程。 如果绑定具有正确的设置,并且数据提供适当的通知,则在数据更改其值时,绑定到该数据的元素会自动反映更改。 数据绑定还意味着,如果元素中数据的外部表示形式发生更改,则基础数据可以自动进行更新以反映更改。 例如,如果用户编辑 TextBox
元素中的值,则基础数据值会自动更新以反映该更改。
数据绑定的典型用法是将服务器或本地配置数据放置到窗体或其他 UI 控件中。 此概念在 WPF 中得到扩展,包括将大量属性绑定到不同类型的数据源。 在 WPF 中,元素的依赖属性可以绑定到 .NET 对象(包括 ADO.NET 对象或与 Web 服务和 Web 属性关联的对象)和 XML 数据。数据绑定的方式一共有四种:
数据绑定在展示层并无太大负担。WPF提供有数据模板(data templates)来控制这些数据。
对OpenType的支持包括:
在以往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可供开发人员使用。
WPF/E发展初期为微软项目将WPF推向各平台的项目,目前此项目已经被发展成为Silverlight技术。
WPF是下一代图形API在桌面上的延伸。以WPF撰写应用程序,具有更高的视觉质量。下表列出微软自家的产品或是第三协力厂商的主力产品:
系列 | 版本 | 发布日期 | 重要变更/事项 | 一同发布的产品 |
---|---|---|---|---|
3 | 3.0 | 2006年11月 | - | - |
3.5 | 2007年11月 | - | - | |
3.5 SP1 | 2008年8月 | - | - | |
4 | 4.0 | 2010年4月 | - | - |
4.5 | 2012年8月 | - | - | |
4.5.1 | 2013年10月 | - | - | |
4.52 | 2014年5月 | - | - | |
4.6 | 2015年7月 | 高清晰度 (High Dots Per Inch; HDPI) 改善;触控行为焦点 (Touch) 改善;程序子视窗透明 (Transparent child window) 支持 | Visual Studio 2015 |
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.