Introduction
This three-day instructor-led course provides students
with the knowledge and skills to build and configure a
Windows Presentation Foundation (WPF) solution.
Audience
This course is intended for application developers who
know how to build Windows Forms applications, custom user
controls in .NET 2.0 and how to use the common features of
the base class library. They do not have to understand
concepts such advanced UI threading and asynchronous
programming, building custom controls from scratch or using
GDI. They also do not need experience building Visual Studio
addins or custom designers.
At Course Completion
After completing this course, students will be able to:
| • |
Create a WPF application.
|
| • |
Build a user interface in a WPF
application.
|
| • |
Customize the appearance of a WPF
application.
|
| • |
Bind user interface controls to
data sources.
|
| • |
Bind user interface controls to
collections.
|
| • |
Create new controls in a WPF
application.
|
| • |
Manage documents in a WPF
application.
|
| • |
Add graphics and multimedia
support to a WPF application.
|
| • |
Configure and deploy WPF
applications.
|
Prerequisites
Before attending this course, students should have
intermediate experience developing applications by using
previous versions of Microsoft Visual Studio at level 200.
Course Outline
Module 1: Creating an Application by Using WPF
This module explains how to build a WPF application.
Lessons
| • |
Overview of WPF
|
| • |
Creating a Simple WPF Application
|
| • |
Handling Events and Commands
|
| • |
Navigating Between Pages
|
Lab: Creating a WPF Application
| • |
Creating a Standalone WPF
Application
|
| • |
Handling Events and Commands
|
| • |
Navigating Between Pages
|
| • |
Creating an XBAP Application
|
After completing this module, students will be able to:
| • |
Explain WPF concepts and features.
|
| • |
Create a simple WPF application.
|
| • |
Handle events and commands.
|
| • |
Navigate between pages in a WPF
application.
|
Module 2: Building User Interfaces
This module explains how to build a user interface in a
WPF application.
Lessons
| • |
Defining Layout
|
| • |
Using Content Controls
|
| • |
Using Item Controls
|
| • |
Hosting Windows Forms Controls
|
Lab: Building User Interfaces
| • |
Defining Layout
|
| • |
Using Content Controls
|
| • |
Using Item Controls
|
| • |
Hosting Windows Forms Controls
|
After completing this module, students will be able to:
| • |
Define layout.
|
| • |
Use content controls.
|
| • |
Use items controls.
|
| • |
Host Windows Forms controls.
|
Module 3: Customizing Appearance
This module explains how to customize the appearance of a
WPF application.
Lessons
| • |
Sharing Logical Resources in an
Application
|
| • |
Creating Consistent User
Interfaces Using Styles
|
| • |
Changing the Appearance of
Controls Using Templates
|
| • |
Using Triggers and Animations
|
Lab: Customizing the Appearance of a WPF Application
| • |
Sharing Logical Resources in an
Application
|
| • |
Creating Consistent User
Interfaces Using Styles
|
| • |
Changing the Appearance of
Controls Using Templates
|
| • |
Using Triggers and Animations
|
After completing this module, students will be able to:
| • |
Share logical resources throughout
and application.
|
| • |
Create a consistent user interface
appearance by using styles.
|
| • |
Change the appearance of controls
using templates.
|
| • |
Change the appearance of user
interface elements by using triggers and animations.
|
Module 4: Data Binding
This module explains how to bind user interface controls
to data sources.
Lessons
| • |
Overview of Data Binding
|
| • |
Create a Data Binding
|
| • |
Implementing Property Change
Notification
|
| • |
Converting Data
|
| • |
Validating Data
|
Lab: Data Binding
| • |
Binding Controls to Data
|
| • |
Implementing Property Change
Notifications
|
| • |
Defining Value Converters
|
| • |
Validating Data
|
After completing this module, students will be able to:
| • |
Explain WPF data binding concepts
and terminology.
|
| • |
Create a binding between a data
source and a control.
|
| • |
Implement property change
notifications.
|
| • |
Convert data between the binding
source and the binding target.
|
| • |
Validate data entered by the user.
|
Module 5: Data Binding to Collections
This module explains how to bind user interface controls
to collections.
Lessons
| • |
Binding to Collections of Objects
|
| • |
Using Collection Views
|
| • |
Create Master-Detail User
Interfaces
|
| • |
Using Data Templates
|
Lab: Data Binding to Collections
| • |
Binding to Collections of Objects
|
| • |
Using Collection Views
|
| • |
Create Master-Detail User
Interfaces
|
| • |
Using Data Templates
|
After completing this module, students will be able to:
| • |
Bind to a collection of objects.
|
| • |
Sort, filter, and group
collections by using collection views.
|
| • |
Create master-detail user
interfaces.
|
| • |
Fine-tune data display by using
data templates.
|
Module 6: Creating New Controls
This module explains how to create new controls in a WPF
application.
Lessons
| • |
Overview of Control Authoring
|
| • |
Creating Controls
|
Lab: Creating New Controls
| • |
Creating User Controls
|
| • |
Creating Custom Controls
|
After completing this module, students will be able to:
| • |
Explain scenarios and options for
creating new controls.
|
| • |
Create user controls.
|
| • |
Create custom controls.
|
Module 7: Managing Documents
This module explains how to manage documents in a WPF
application.
Lessons
| • |
Working with Flow Documents
|
| • |
Working with Fixed Documents
|
| • |
Packaging Documents
|
| • |
Printing Documents
|
Lab: Managing Documents
| • |
Creating and Displaying Flow
Documents
|
| • |
Creating and Displaying Fixed
Documents
|
| • |
Packaging Documents
|
| • |
Printing Documents
|
After completing this module, students will be able to:
| • |
Create and view flow documents.
|
| • |
Create and view fixed documents.
|
| • |
Package a document.
|
| • |
Print a document.
|
Module 8: Graphics and Multimedia
This module explains how to add graphics and multimedia
support to a WPF application.
Lessons
| • |
Displaying 2D graphics
|
| • |
Displaying Images
|
| • |
Displaying 3D Graphics
|
| • |
Going Further with 3D Graphics
|
| • |
Adding Multimedia Support
|
Lab: Adding Graphics and Multimedia Support to a WPF
Application
| • |
Displaying 2D graphics
|
| • |
Displaying Images
|
| • |
Displaying 3D Graphics
|
| • |
Playing Audio and Video Clips
|
After completing this module, students will be able to:
| • |
Display 2D graphics.
|
| • |
Add images in a WPF application.
|
| • |
Display 3D graphics.
|
| • |
Use additional 3D graphics
capabilities.
|
| • |
Add multimedia content to a WPF
application.
|
Module 9: Configure and Deploy WPF Applications
This module explains how to configure and deploy WPF
applications.
Lessons
| • |
Deployment Options
|
| • |
Deploying a Standalone WPF
Application
|
| • |
Deploying an XBAP Application
|
| • |
Configuring Security Settings
|
Lab: Configuring and Deploying WPF Applications
| • |
Deploying a Standalone WPF
Application
|
| • |
Creating Deployment and
Application Manifests
|
| • |
Deploying an XBAP Application
|
After completing this module, students will be able to:
| • |
Explain deployment options.
|
| • |
Deploy a standalone WPF
application.
|
| • |
Deploy an XBAP application.
|
| • |
Configure security settings.
|