• Online, Self-Paced
Course Description

Microsoft's Windows Presentation Foundation (WPF) is a framework within .NET for building next-generation standalone and browser-based client applications. This course introduces WPF to the C# programmer and shows how to create and deploy multimedia applications with WPF. You will learn about using windows and page-based navigation, implementing and formatting controls, working with events and data binding. You'll also learn about incorporation of multimedia elements including 3-D graphics, video and audio, and animations. Finally, you'll learn about using resources and deploying a WPF application.

Learning Objectives

Introduction to WPF and XAML

  • start the course
  • provide a high-level overview of WPF
  • use XAML in WPF applications
  • recognize the types of controls available in WPF and implement some common controls
  • implement panel controls for layout in WPF applications

XAML Language Features

  • work with resources in WPF applications
  • implement styles for elements in WPF applications
  • use templates to specify controls in WPF applications
  • describe working with storyboards and animations using XAML in WPF applications
  • create basic animations in WPF applications

WPF Controls - Deep Dive

  • use Windows for standalone applications
  • use page-based navigation for browser based applications
  • implement menus and tabs in WPF applications
  • implement rich text controls in WPF applications
  • use the ListView, DataGrid, and TreeView controls to display bound data in WPF applications

Model-View-Model Pattern

  • recognize the main features of data binding in WPF applications such as the DataContext dependency property, the Binding class, sources, and one-way and two-way binding
  • implement data binding in WPF applications
  • format or convert bound data in a WPF application
  • implement commands in WPF applications

Managed WPF and C#

  • recognize the event model of WPF
  • implement events in WPF applications

Extended WPF Functionality

  • recognize how to work with user input in WPF applications
  • implement touch capabilities in WPF applications
  • render graphics in WPF applications
  • work with 3-D graphics in WPF applications
  • incorporate audio and video in WPF applications


  • deploy WPF applications

Practice: Multimedia Applications using WPF

  • create a multimedia WPF application

Framework Connections

The materials within this course focus on the Knowledge Skills and Abilities (KSAs) identified within the Specialty Areas listed below. Click to view Specialty Area details within the interactive National Cybersecurity Workforce Framework.