Windows Presentation Foundation (WPF) is part of the Microsoft .NET framework used to create rich client user experiences for Windows application.
Windows Presentation Foundation (WPF, previously known as “Avalon”) is part of the Microsoft .net framework (version 3.0 onwards) used to create rich client user experiences for Windows applications. It features a diverse set of controls, layout options, 2D and 3D graphics, and media and text handling, and enables data binding and style-driven templates.
It uses a combination of xaml, an xml-based markup language, and any of the Common Language Runtime languages to define user interface elements. A fundamental aspect of WPF is to separate the user interface definition from the business logic which enables developers and designers to work concurrently on a single project much more easily. WPF also moves UI rendering off to the video hardware through the use of DirectX. Doing so allows computers to utilize their GPU, which frees the CPU to handle more of the logic-oriented tasks.
WPF runtime libraries are included in all versions of windows since Windows Vista and Windows Server 2008.
WPF employs xaml to define and link various UI elements. WPF applications can also be deployed as standalone desktop programs or hosted as an embedded object in a website. WPF aims to unify a number of common user interface elements, such as 2D/3D rendering, fixed and adaptive documents, typography, vector graphics, runtime animation, and pre-rendered media. These elements can then be linked and manipulated based on various events, user interactions, and data bindings.
Microsoft has released five major WPF versions: WPF 3.0 (Nov 2006), WPF 3.5 (Nov 2007), WPF 3.5sp1 (Aug 2008), WPF 4 (April 2010), and WPF 4.5 (August 2012).
- KAXAML - Open source XAML Editor
- Snoop - UI Inspection Tool
- WPF Inspector - UI Inspection Tool
- WPF Performance Suite - Performance Profiling Tools for WPF
- Recommended books
- WPF Unleashed
Visual Studio Extensions for WPF Controls