Windows Presentation Foundation 是一个为Windows创建桌面客户端应用程序的UI框架。WPF开发平台支持广泛的应用程序开发功能,包括应用程序模型,控件,图形和数据绑定。
XAML
XAML是WPF用于定义资源或UI元素之类的基于XML的声明式语言。XAML中定义的元素表示程序集中对象的实例化。
XAML扩展
XAML提供标记扩展的语法。标记扩展可用于以属性形式,属性元素形式或同时以这两种形式提供属性值。
Property system
WPF属性系统支持的属性称为依赖项属性。
依赖项属性通过提供支持属性的DependencyProperty类型来扩展属性功能。依赖项属性类型是使用私有字段支持属性的标准模式的替代实现。
Dependency property
依赖项属性的目的是提供一种基于其他输入值来计算属性值的方法。这些其他输入可能包括系统属性(例如主题和用户首选项),或者数据绑定和动画中的即时属性。
Dependency object
WPF属性系统的另一个关键类型是DependencyObject。此类型定义可以注册并拥有依赖项属性的基类。GetValue和SetValue方法提供依赖项属性的依赖对象实例的底层实现。
Events
路由事件系统的主要优点是事件在控制元素树中冒泡,以查找处理程序。
Data binding
WPF数据绑定为应用程序呈现和与数据交互提供了一种简单而一致的方法。
UI components
几乎所有的Windows应用程序中使用的通用的UI组件
Styles and templates
标准化产品的特定外,观表示和逻辑分离,资源(Resources)使样式和模板得以重用。
Resources
WPF资源是可以在应用程序中不同位置重用的对象。资源的示例包括样式,模板和颜色笔刷。资源可以用代码和XAML格式定义和引用。