Programming in WPF Training Course


Windows Presentation Foundation (WPF) is an open-source graphical subsystem framework for rendering user interfaces. It provides tools and resources for creating desktop client applications.

This instructor-led, live training (online or onsite) is aimed at software developers who wish to develop desktop client applications using the latest version of WPF, C#, and Visual Studio.

By the end of this training, participants will be able to:

  • Learn and understand how to use the MSDN resources and tools.
  • Support the development process in Microsoft Visual Studio.
  • Develop business desktop applications using WPF technology and C# language.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.


  • Knowledge of the basic phrases of software development
  • Knowledge of Visual Studio and C#


  • Software developers
  • Programmers
  • Technical team leader

Course Outline



  • Introduction to Visual Studio
  • Creating a project
  • Compiling and debugging

Microsoft .NET

  • What is .NET?
  • CLR and garbage collector
  • DLL vs. EXE?
  • Technologies within .NET

Foundations of WPF

  • History of WPF
  • MVVM design pattern
  • WPF vs. Windows forms
  • Differences between WPF versions

In and Out

  • WPF project structure
  • XAML, layout, and dependency properties
  • Commands and resources
  • Events
  • Styles and behaviours
  • Understanding data binding and data streams

Data Flow

  • Data modelling in WPF
  • Access to databases
  • LINQ
  • Entity framework
  • CRUD operations
  • Data validation


  • Controls review
  • WPF toolkit extended
  • User controls a custom controls
  • Templates

Advanced topics

  • Asynchronous and parallel operations
  • Inverse of Control (IoC)
  • Unity and PRISM

Real World Application

  • Developing a system architecture
  • Data modelling
  • Implementation
  • Application testing

Summary and Next Steps

Leave a Reply

Your email address will not be published. Required fields are marked *