Windows Presentation Foundation (WPF) Training Using C#

This Windows Presentation Foundation (WPF) Training Using C# training class introduces Windows Presentation Foundation or WPF, the .NET technology from Microsoft for building rich Windows applications. This course covers the essentials of WPF, providing an orientation to this technology and a firm foundation for creating applications. The course is current to Visual Studio 2017 and the latest versions of the classical .NET Framework.

WPF is a complex technology that can have a steep learning curve. This course approaches the subject in a practical manner, introducing the student to the fundamentals of creating Windows applications using the features of WPF. It includes coverage of both traditional concepts such as controls and new concepts such as XAML, flexible layout, logical resources, dependency properties, routed events, and the loosely coupled command architecture of WPF. Data binding is discussed in detail, including visual data binding using Visual Studio 2017 and accessing databases using Entity Framework 6. The course also covers styles, templates, skins and themes. The course concludes with a brief lesson on WPF and Windows Forms interoperation.

Goals
  1. Gain an understanding of the philosophy and architecture of WPF.
  2. Create Windows applications using the classes provided by WPF.
  3. Understand the principles of XAML and create applications using a combination of code and XAML.
  4. Use the layout features of WPF to create flexible and attractive user interfaces.
  5. Gain an understanding of the philosophy and architecture of WPF.
  6. Create Windows applications using the classes provided by WPF.
  7. Understand the principles of XAML and create applications using a combination of code and XAML.
  8. Use the layout features of WPF to create flexible and attractive user interfaces.
  9. Implement event and command-driven applications with windows, menus, dialogs, toolbars, and other common user interface features.
  10. Use more advanced features of WPF such as dependency properties, routed events, logical resources, styles, templates, and data binding.
  11. Access databases using Visual Studio 2017 and the Entity Framework 6.
  12. Learn how to interoperate between WPF and Windows Forms .
  13. Implement event and command-driven applications with windows, menus, dialogs, toolbars, and other common user interface features.
  14. Use more advanced features of WPF such as dependency properties, routed events, logical resources, styles, templates, and data binding.
  15. Access databases using Visual Studio 2017 and the Entity Framework 6.
  16. Learn how to interoperate between WPF and Windows Forms .
Outline
  1. Introduction to WPF
    1. Why WPF?
    2. What Is WPF?
    3. .NET Framework 4.0 and Later
    4. .NET Core and WPF
    5. WPF Overview
    6. Application and Window
    7. A Simple WPF Application
    8. Using Visual Studio 2017
    9. Brushes
    10. Panels
  2. XAML
    1. Role of XAML
    2. Elements and Attributes
    3. Namespaces
    4. Property Elements
    5. Type Converters
    6. Content Property
    7. Collections
    8. XAML and Procedural Code
  3. WPF Controls
    1. Button
    2. Label
    3. TextBox
    4. ToolTip
    5. RadioButton
    6. CheckBox
    7. ListBox
    8. ComboBox
  4. Layout
    1. Sizing
    2. Positioning
    3. Transforms
    4. Canvas
    5. Drawing Shapes
    6. StackPanel
    7. WrapPanel
    8. DockPanel
    9. Grid
    10. Scrolling
    11. Scaling
  5. Dialogs
    1. Message Boxes
    2. Win32 Common Dialogs
    3. Custom Modal Dialogs
    4. Custom Modeless Dialogs
  6. Menus and Commands
    1. Menus
    2. Context Menus
    3. Icons on Menu Items
    4. Commands
    5. Keyboard Shortcuts
    6. Disabling Menu Items
    7. Checking Menu Items
  7. Toolbars and Status Bars
    1. Toolbars
    2. Toolbars and Commands
    3. Status Bars
  8. Dependency Properties and Routed Events
    1. Dependency Properties
    2. Change Notification
    3. Property Value Inheritance
    4. Support for Multiple Providers
    5. Routed Events
    6. Routing Strategies
  9. Resources
    1. Resources in WPF
    2. Binary Resources
    3. Logical Resources
    4. Static versus Dynamic Resources
  10. Data Binding
    1. Binding Sources
    2. Sharing Sources with DataContext
    3. Data Templates
    4. Value Converters
    5. Collection Views
    6. Data Providers
    7. Visual Data Binding Using Visual Studio 2017
    8. Database Access Using Entity Framework
  11. Styles, Templates, Skins and Themes
    1. Styles
    2. Style Sharing
    3. Triggers
    4. Validation
    5. Templates
    6. Templated Parent’s Properties
    7. Skins
    8. Themes
  12. Windows Forms and WPF Interoperation
    1. Mixing Forms and WPF Windows
    2. Mixing Controls
Class Materials

Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.

Class Prerequisites

Experience in the following is required for this C# class:

  • A working knowledge of C# and the .NET Framework