Home > Store > Programming > Windows Programming

Windows Presentation Foundation Unleashed (WPF)

Register your product to gain access to bonus material or receive a coupon.

Windows Presentation Foundation Unleashed (WPF)

Best Value Purchase

Book + eBook Bundle

  • Your Price: $64.79
  • List Price: $107.98
  • Includes EPUB, MOBI, and PDF
  • About eBook Formats
  • This eBook includes the following formats, accessible from your Account page after purchase:

    ePub EPUB The open industry format known for its reflowable content and usability on supported mobile devices.

    MOBI MOBI The eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

    Adobe Reader PDF The popular standard, used most often with the free Adobe® Reader® software.

    This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.

More Purchase Options

Book

  • Your Price: $47.99
  • List Price: $59.99
  • Usually ships in 24 hours.

eBook (Watermarked)

  • Your Price: $38.39
  • List Price: $47.99
  • Includes EPUB, MOBI, and PDF
  • About eBook Formats
  • This eBook includes the following formats, accessible from your Account page after purchase:

    ePub EPUB The open industry format known for its reflowable content and usability on supported mobile devices.

    MOBI MOBI The eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

    Adobe Reader PDF The popular standard, used most often with the free Adobe® Reader® software.

    This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.

Description

  • Copyright 2007
  • Dimensions: 7x9-1/8
  • Pages: 656
  • Edition: 1st
  • Book
  • ISBN-10: 0-672-32891-7
  • ISBN-13: 978-0-672-32891-6

Printed entirely in color, with helpful figures and syntax coloring to make code samples appear as they do in Visual Studio.

Windows Presentation Foundation (WPF) is a key component of the .NET Framework 3.0, giving you the power to create richer and more compelling applications than you dreamed possible. Whether you want to develop traditional user interfaces or integrate 3D graphics, audio/video, animation, dynamic skinning, rich document support, speech recognition, or more, WPF enables you to do so in a seamless, resolution-independent manner. Windows Presentation Foundation Unleashed is the authoritative book that covers it all, in a practical and approachable fashion, authored by .NET guru and Microsoft developer Adam Nathan.

· Covers everything you need to know about Extensible Application Markup Language (XAML)

· Examines the WPF feature areas in incredible depth: controls, layout, resources, data binding, styling, graphics, animation, and more

· Features a chapter on 3D graphics by Daniel Lehenbauer, lead developer responsible for WPF 3D

· Delves into non-mainstream topics: speech, audio/video, documents, bitmap effects, and more

· Shows how to create popular UI elements, such as features introduced in the 2007 Microsoft Office System: Galleries, ScreenTips, custom control layouts, and more

· Demonstrates how to create sophisticated UI mechanisms, such as Visual Studio-like collapsible/dockable panes

· Explains how to develop and deploy all types of applications, including navigation-based applications, applications hosted in a Web browser, and applications with great-looking non-rectangular windows

· Explains how to create first-class custom controls for WPF

· Demonstrates how to create hybrid WPF software that leverages Windows Forms, ActiveX, or other non-WPF technologies

· Explains how to exploit new Windows Vista features in WPF applications

Downloads

Source Code

Download the Source Code from this book.

Sample Content

Online Sample Chapters

Important New Concepts in Windows Presentation Foundation

Important New Concepts in WPF

Downloadable Sample Chapter

Download the Introduction

Download the sample chapter

Download the Index

Table of Contents

PART I Background

1 Why Windows Presentation Foundation?

2 XAML Demystified

3 Important New Concepts in WPF

PART II Building a WPF Application

4 Introducing WPF’s Controls

5 Sizing, Positioning, and Transforming Elements

6 Layout with Panels

7 Structuring and Deploying an Application

PART III Features for Professional Developers

8 Resources

9 Data Binding

10 Styles, Templates, Skins, and Themes

PART IV Going Beyond Today’s Applications with Rich Media

11 2D Graphics

12 3D Graphics

13 Animation

14 Audio, Video, Speech, and Documents

PART V Advanced Topics

15 Interoperability with Win32, Windows Forms, and ActiveX

16 User Controls and Custom Controls

17 Layout with Custom Panels

PART VI   Appendix: Helpful Tools

Index

Updates

Errata

PrintNumber ErrorLocation Error Correction DateAdded
4 p2 Because WPF enables you to create not only standalone Windows applications but also content hosted in a web browser, anyone interested in alternatives to Adobe Flash might find this book interesting. And although the more lightweight and cross-platform Windows Presentation Foundation Everywhere (WPF/E) technology does not have significant coverage in this book, many of the same concepts in this book will apply to WPF/E once it is released.
Because WPF enables you to create not only standalone Windows applications but also content hosted in a web browser, anyone interested in alternatives to Adobe Flash might find this book interesting. And although the more lightweight and cross-platform Silverlight technology does not have significant coverage in this book, many of the same concepts in this book will apply to WPF/E once it is released.
6/25/2007
4 p15 To address cross-platform support and ubiquity, Microsoft has announced Windows Presentation Foundation Everywhere (WPF/E). WPF/E (not yet released at the time of writing) is a small, lightweight runtime representing a subset of WPF. It supports XAML and JavaScript in addition to C# and Visual Basic, and should eventually be available on both Windows and non-Windows systems. At the time of writing, it is expected that WPF/E will support vector-based graphics, images, video, animation, text, and basic controls, but it won’t support 3D, rich documents support, extensibility, or hardware acceleration. It remains to be seen how popular WPF or WPF/E will be as an alternative to Flash. To address cross-platform support and ubiquity, Microsoft has announced Silverlight. Silverlight (still in beta at the time of writing) is a small, lightweight runtime representing a subset of WPF. It supports XAML and JavaScript (in version 1.0) in addition to .NET languages (in version 1.1) and is available for both Windows and Mac systems. At the time of writing, Silverlight supports vector-based graphics, images, video, animation, text, and basic controls, but it doesn’t support 3D, rich documents, extensibility, or hardware acceleration. It remains to be seen how popular Silverlight will be as an alternative to Flash, but it holds a lot of promise. 6/25/2007
4 p110 TabControl
The final selector—TabControl—is useful for switching between multiple pages of content. Figure 4.17 shows what a basic TabControl looks like. Tabs in a TabControl are typically placed on the top, but with TabControl’s TabStripPlacment property (of type Dock), you can also set their placement to Left, Right, or Bottom.
TabControl
The final selector—TabControl—is useful for switching between multiple pages of content. Figure 4.17 shows what a basic TabControl looks like. Tabs in a TabControl are typically placed on the top, but with TabControl’s TabStripPlacement property (of type Dock), you can also set their placement to Left, Right, or Bottom.
6/25/2007
4 p227 XAML Browser Applications
This chapter started with a standard Windows application, and basically continued to add features to it to take fuller advantage of WPF or of the underlying operating system. These last two sections are actually about ways to repackage and restrict functionality for the sake of achieving broader and easier deployment.
WPF supports the creation of applications that run directly in a web browser. (So will WPF/E, when it is released.) They are called XAML Browser Applications (XBAPs), and have a .xbap file extension.
XAML Browser Applications
This chapter started with a standard Windows application, and basically continued to add features to it to take fuller advantage of WPF or of the underlying operating system. These last two sections are actually about ways to repackage and restrict functionality for the sake of achieving broader and easier deployment.
WPF supports the creation of applications that run directly in a web browser. (So does Silverlight, but with less power and broader reach.) They are called XAML Browser Applications (XBAPs), and have a .xbap file extension.
6/25/2007
4 p227 Do XAML Browser Applications work on any operating system or in any
web browser?
No. Just like full WPF applications, they require Windows and they require the .NET Framework 3.0 or later to be installed. And at the time of writing, they are only supported within Internet Explorer or any other browser that hosts the Microsoft WebBrowser ActiveX control. If you don’t need all the power of WPF and want broader platform exposure, WPF/E is the best choice. (Especially considering that all the power of WPF isn’t typically available in the browser anyway due to security restrictions!)
Do XAML Browser Applications work on any operating system or in any
web browser?
No. Just like full WPF applications, they require Windows and they require the .NET Framework 3.0 or later to be installed. And at the time of writing, they are only supported within Internet Explorer or any other browser that hosts the Microsoft WebBrowser ActiveX control. If you don’t need all the power of WPF and want broader platform exposure, Silverlight is the best choice. (Especially considering that all the power of WPF isn’t typically available in the browser anyway due to security restrictions!)
6/25/2007
4 p232 Why would you want to create a XAML Browser Application?

XBAPs are suited for relatively full-featured applications that happen to be hosted directly in a web browser. This direct hosting can be desirable for seamless navigation between HTML and WPF content, or simply for the lightweight feel conveyed by such an arrangement. After WPF/E is released, it is likely to be the preferred approach over creating an XBAP (as it
will have broader platform support) for simpler applications that don’t require as much
functionality.
If you want weblike deployment but don’t care about having your application hosted directly in a web browser, you can simply create a standard Windows application rather than an XBAP, decide if you want to constrain it to run under partial trust, and deploy it using ClickOnce.
On the other hand, if your goal is to use WPF to create richer web pages (which tend not to require custom application logic), you should consider creating and deploying a loose XAML page, described in the “Loose XAML Pages” section.
Why would you want to create a XAML Browser Application?

XBAPs are suited for relatively full-featured applications that happen to be hosted directly in a web browser. This direct hosting can be desirable for seamless navigation between HTML and WPF content, or simply for the lightweight feel conveyed by such an arrangement. Silverlight is likely to be the preferred approach over creating an XBAP (as it will have broader platform support) for simpler applications that don’t require as much functionality.
If you want weblike deployment but don’t care about having your application hosted directly in a web browser, you can simply create a standard Windows application rather than an XBAP, decide if you want to constrain it to run under partial trust, and deploy it using ClickOnce.

Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership