Friday, October 5, 2007

Windows Presentation Foundation

The Windows Presentation Foundation (or WPF), formerly code named Avalon, is the graphical subsystem feature of the .NET Framework 3.0 (formerly called WinFX) and is directly related to XAML. It is pre-installed in Vista, the latest version of the Microsoft Windows operating system. WPF is also available for installation on Windows XP SP2 and Windows Server 2003. It provides a consistent programming model for building applications and provides a clear separation between the UI and the business logic. A WPF application can be deployed on the desktop or hosted in a web browser. It also enables richer control, design, and development of the visual aspects of Windows programs. It aims to unify a host of application services: user interface, 2D and 3D drawing, fixed and adaptive documents, advanced typography, vector graphics, raster graphics, animation, data binding, audio and video.

Features:

Graphical Services
All graphics (including desktop items like windows) will be routed through Direct3D.

Deployment
WPF deployment model offers both standalone and XAML Browser Applications (XBAP) flavors.

Interoperability
WPF provides interoperability with Win32: Via hosting, and interoperability with Windows Forms through the use of the ElementHost and WindowsFormsHost classes.

Media Services
WPF provides shape primitives for 2D graphics, 3D capabilities, time-based animations, text rendering.

Data binding
WPF has a built-in set of data services to enable application developers to bind and manipulate data within applications.

User interface
A powerful concept in the WPF is the logical separation of a control from its appearance.

Imaging
Windows Imaging Component (WIC) for WPF allows developers to write image codecs for their specific image file formats.

Effects & Text rendering
Special effects and text rendering features that was not available in GDI.

Alternative input
WPF supports digital ink-related functionality.

Accessibility
WPF supports Microsoft UI Automation to allow developers to create accessible interfaces.

No comments: