Create an Impression

Create an Impression

Windows Vista® offers everything developers need to create impressive user experiences.

Provide consistency and elegance in your user interface design by following user education (UE) guidelines. Windows Vista also provides new tools that enable users to visualize, organize, and search within applications. Finally, Windows Vista includes the Windows® Presentation Foundation, which enables developers to enrich user experiences in applications. Great-looking Windows applications are easy with Windows Vista.

Follow the Windows Vista User Experience Guidelines

Windows Vista offers a new look and user experience for users, including new common controls, translucent frames, a page navigation paradigm, and a standard search feature. By following the Windows Vista User Experience Guidelines, developers can provide their users with a consistent and predictable user experience.

Developers can use new controls in Windows Vista to provide this consistent experience for specific types of interaction.

Common Item Dialogs

The new Common Item Dialogs (formerly known as the Common File Dialogs) enable developers to provide new search and organization capabilities when prompting users to open and save files. The Microsoft .NET Framework version 3.0 Development Vista Bridge Sample has a managed wrapper for many of the file dialog COM interfaces. (See the "Enable users to visualize, organize and search" section below.)

Resources:

Common Item Dialog

The definitive MSDN documentation.

Developing with Common File Dialogs

Developer Story article about the same technology (slightly dated).

IFileDialog

IFileOpenDialog

IFileSaveDialog

IFileDialogControlEvents

IFileDialogCustomize

IFileDialogEvents

Links to the MSDN reference documentation that addresses common item dialogs.

Windows Vista Wizard Framework

Developers can expose application data to users in a natural and consistent way through the Windows® Aero™ shell. The Windows Aero Wizard framework provides a new look to the common wizard interface and is designed to provide a more focused experience for users. Developers now have a mechanism for offering more options to customize the user interface (UI) by replacing default command buttons with context-relevant text, resizable pages, and custom background graphics.

The Windows Vista User Experience Wizard framework gives native application developers the ability to use the Windows Vista User Experience style in their dialog boxes. This provides consistency for the end users.

Resources:

Aero Wizards

Guide to new Wizard features in Windows Vista.

Beyond WinFx

Transactions, Aero Wizards, and Task Dialogs in Windows Vista.

Create the Experience

Some general information about wizards in Windows Vista.

Task Dialogs

Task Dialogs provide a more contextual and flexible alternative to the much used MessageBox API, including support for hyperlinks and customizable button labels and icons. In Windows Vista, task dialogs replace the message box and most other instances of a single-step prompt or error message.

Resources:

Task Dialogs

MSDN feature overview.

Task Dialog

This Developer Story article provides several good code examples.

New Windows Vista User Interface Elements

Windows Vista provides a number of new user interface elements. See the "What's New" article below for a definitive list and explanation of the design philosophy behind these elements.

Resources:

What’s New in Windows Vista (UI)

A comprehensive guide to new user interface technologies in Windows Vista.

Windows Vista User Experience Guidelines

Definitive guide for developing user interface elements with Windows Vista.

Vista Bridge SDK Samples

This sample contains managed wrappers for a number of new Windows Vista APIs that are not exposed in the .NET Framework version 2.0.

Segoe UI Font

This article offers aesthetic advice about using the new default Windows Vista font in user interfaces.

Enrich the User Experience

Windows Vista provides a number of tools and technologies aimed at creating a fantastic user experience. The Windows Presentation Foundation (WPF) sets a new standard for interface-oriented application design. The Windows® SideBar and Gadgets for Windows Sidebar features offer a new way for users to interact with their desktop. DirectX® 10 is available for the first time in Windows Vista running on a new device driver model. Previous versions of DirectX are still supported. The new Desktop Window Manager fundamentally changes the way applications display pixels on the screen. Finally, the new Windows Imaging Component offers new ways of working with images and image metadata.

Windows Presentation Foundation

Use Windows Presentation Foundation to create engaging interfaces with multimedia support, vector graphics, animation, and content composition.

The WPF unifies the way developers and designers experience documents, media, and UI, providing a single runtime for browser-based experiences, forms-based applications, documents, graphics, video, and audio. Central to the WPF framework are controls that provide the building blocks for developing next-generation user experiences.

WPF Controls

Animation (System.Windows.Media.Animation)

The animation and timing system in WPF.

Shapes (System.Windows.Shapes)

Support for drawing basic shapes in WPF.

Audio and video (System.Windows.Media)

WPF support for audio and video content.

3D (System.Windows.Media.Media3D)

Information about 3-D support in WPF.

Documents (System.Windows.Documents, System.Windows.XPS, System.Printing, System.Windows.Media.TextFormatting)

Robust set of APIs for text formatting and document support in WPF.

The WPF programming model makes user interfaces simpler to develop and easier to maintain. XAML (Extensible Application Markup Language) is used to better separate user interface layout and composition from logic.

WPF Controls

XAML

A markup language for declarative application programming.

Routed Events (System.Windows.RoutedEventHandler) and Commands (System.Windows.Input.RoutedCommand)

Overviews of event and input systems in WPF.

Dependency Properties and Attached Properties

Explains how WPF extends CLR Properties.

Styles (System.Windows Style Class)

WPF uses Styles that enable designers to create visually compelling applications and to standardize a particular look for their product.

Resources (System.Windows.Resources)

Resources offer a simple way to reuse commonly defined objects and values in the WPF.

Data Binding (System.Windows.Data)

WPF Data Binding provides a simple and consistent way for applications to present and interact with data.

Application Management

All applications that use WPF are associated with an application object. This object represents the application to the operating system and enables the system to communicate with that application.

Layout System

WPF allows any UI item to be nested within any other item. It also separates control behavior from presentation.

Control Customization

This document covers the various base classes, interfaces and other elements and concepts used in creating a fully functional Windows Presentation Foundation (WPF) control.

Other Windows Presentation Foundation resources are listed in the following table.

Resources:

WPF SDK Documentation

MSDN Documentation home page.

Designing with Windows Presentation Foundation

An interesting, early whitepaper about WPF.

Five Day Ramp-Up on WPF

Blog detailing a developer learning WPF.

Windows Presentation Foundation Community Site

The .NET Framework community site.

WPF Blogger List

A listing of those who blog about WPF.

Windows SideBar and Gadgets for Windows Sidebar

Windows Sidebar offers a way to interact with users even when an application isn’t running. Developers can build Gadgets — lightweight mini-applications that run on the Sidebar or directly on the user’s desktop — that are always on and available to provide important information or updates.

Windows® SideShow™ enables developers to create applications specifically for devices with small displays and limited interaction models.

Resources:

Gadget Documentation

A comprehensive overview about creating Gadgets.

Windows SideBar Reference

MSDN Sidebar Reference documentation.

Windows SideBar Gadget Development Overview

Whitepaper discussing Sidebar development.

Gaget Corner

Windows Sidebar team blog.

Windows SideShow

Reference documentation.

Windows Live Gallery

Gallery of Gadgets available for download.

Microsoft Gadgets Site

Up-to-date news about Sidebar and Gadget for Sidebar development.

Windows Device Driver Model

Windows Device Driver Model (WDDM) is a new display-driver architecture in Windows Vista. This display architecture gives users a better performing, more reliable desktop experience while supporting new scenarios, graphics, and applications.

WDDM provides video content playback that rivals typical consumer electronics devices by making it easy to connect to external monitors, providing for protected High-Definition (HD) video playback, and increasing overall video playback quality.

For the first time in Windows, graphics processing unit (GPU) multitasking is possible, enabling users to run more than one GPU-intensive application simultaneously.

Finally, WDDM improves the PC gaming experience by simplifying the generalized GPU programming model for developers and maintaining a consistency in hardware capabilities, which translates into a PC gaming experience that will leapfrog that of even the latest consoles.

Resources:

Windows Device Driver Model

MSDN documentation.

DirectX

Windows Vista offers a number of 3-D graphics improvements through the DirectX API. These improvements build on WDDM.

Direct3D is now integrated directly into Windows Vista, which uses the Direct3D graphics pipeline for desktop composition, the Picture Viewer, and the Windows Presentation Foundation.

Resources:

DirectX for Windows Vista

A good overview of the changes in DirectX in Windows Vista.

DirectX

Developer Story DirectX articles.

DirectX Developer Center

MSDN DirectX Web site.

Desktop Window Manager

Desktop composition is performed by the Desktop Window Manager (DWM), a new component of Windows Vista. DWM enables visual effects on the desktop as well as various features, such as glass window frames, 3-D window transition animations, Windows® Flip and Windows® Flip3D, and high-resolution support.

Resources:

Desktop Window Manager

MSDN documentation.

Developing for the Desktop Window Manager (DWM)

Developer Story article.

Windows Imaging Component

Windows Imaging Component (WIC) provides an extensible framework for working with images and image metadata. A single, consistent set of interfaces is used for all image processing, regardless of image format, so any application using the WIC gets automatic support for new image formats as soon as the codec is installed.

The extensible metadata framework makes it possible for applications to read and write their own proprietary metadata directly to image files, so the metadata never gets lost or separated from the image.

Resources:

Windows Imaging Component (WIC)

MSDN overview.

Windows Vista changes how users interact with their files, messages, and other items. With new concepts such as search folders, stacks, grouping and filtering, users are no longer restricted to using folders only as a way of organizing their content. Developers can take advantage of these new concepts and capabilities in their applications, and can ensure that the data those applications create is prominent in the visualization, organization, and search experience.

Developers can use many of the Windows Vista search and organization features from within applications directly.

The Object Linking and Embedding Data Base provider for Windows Search is the mechanism that Windows Vista uses to allow developers to issue queries against the Windows Vista search engine. This can be useful for programmatically searching the hard drive.

Resources:

OLE DB Provider for Windows Search

"A La Vista" blog entry explaining how to access Windows Search programmatically with examples.

ISearchQueryHelper

This interface can be used to convert from Advanced Query Syntax to the OLE DB query string format.

Property Provider APIs

Applications can read and write metadata across multiple file formats by using the Property Provider APIs.

Resources:

PSGetPropertyDescription

IPropertyStore

IPropertyDescription

API documentation for Property Providers.

Windows Explorer Browser and Namespace Explorer

Applications can host the Windows Explorer Browser and Namespace Explorer controls to provide users with the same search folder, grouping, and stacking experience as in the shell.

Resources:

IExplorerBrowser

API documentation for a browser object that either can be navigated or can host a view of a data object.

INamespaceTreeControl

Used to view and manipulate nodes in a tree of Shell items.

Integrate Custom File Formats

Applications with custom file formats can integrate with the Windows Vista visualization, organization, and search functionalities through the following extensibility mechanisms.

Resources:

Rich Preview Handlers (IPreviewHandler, IPreviewHandlerVisuals) provide in-place interactive previews of document content in Explorer windows, common dialogs, and search results.

Live Icons (IThumbnailProvider) enable developers to build high-resolution (256 x 256, 32bpp color depth) icons, customized per document, to show a preview of that document's contents.

Property Handlers enable metadata support for custom file formats.

IFilter

Full-text search can be enabled for custom file formats by implementing the IFilter interface.

Preview handlers provide a rich, interactive, read-only preview when a file is selected in the Windows Vista Document Explorer.

Protocol Handlers provide support for custom protocols. For example, to support RSS or an Image Server.

Integrating Search

Reading and Writing Metadata

Windows Desktop Search 3.0

Extensibility mechanisms for file format and data store providers

https://addins.msn.com/devguide.aspx#AddingaNewFileType

Explains how to add a new file type in Windows Vista.