Windows Presentation Foundation Using C#
Current Version: 4.8
Summary
This course introduces Windows Presentation Foundation or WPF, the .NET
technology from Microsoft for building rich Windows applications. It
was originally part of .NET 3.0, previously called "WinFX" by
Microsoft. WPF includes an XML-based markup language for defining
program elements, Extensible Application Markup Language (XAML). WPF
applications can be created using only code or a combination of code
and XAML pages. 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 not supported
on .NET Core.
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
chapter on WPF and Windows Forms interoperation.
The course is hands-on with many example programs and lab exercises.
Prerequisites
A working knowledge of C# and the .NET Framework
Course Objectives
On completion of this course, the student should be able to
Gain an understanding of the philosophy and architecture of
WPF
Create Windows applications using the classes provided by WPF
Understand the principles of XAML and create applications
using a combination of code and XAML
Use the layout features of WPF to create flexible and
attractive user interfaces
Implement event and command-driven applications with windows,
menus, dialogs, toolbars, and other common user interface features
Use more advanced features of WPF such as dependency
properties, routed events, logical resources, styles, templates, and
data binding
Access databases using Visual Studio 2017 and the Entity
Framework 6
Learn how to interoperate between WPF and Windows Forms
Length
4 Days
Format
Instructor-led course, with practical computer-based exercises.
Course Outline
1. Introduction to WPF
Why WPF?
What Is WPF?
.NET Framework 4.0 and Later
.NET Core and WPF
WPF Overview
Application and Window
A Simple WPF Application
Using Visual Studio 2017
Brushes
Panels
2. XAML
Role of XAML
Elements and Attributes
Namespaces
Property Elements
Type Converters
Content Property
Collections
XAML and Procedural Code
3. WPF Controls
Button
Label
TextBox
ToolTip
RadioButton
CheckBox
ListBox
ComboBox
4. Layout
Sizing
Positioning
Transforms
Canvas
Drawing Shapes
StackPanel
WrapPanel
DockPanel
Grid
Scrolling
Scaling
5. Dialogs
Message Boxes
Win32 Common Dialogs
Custom Modal Dialogs
Custom Modeless Dialogs
6. Menus and Commands
Menus
Context Menus
Icons on Menu Items
Commands
Keyboard Shortcuts
Disabling Menu Items
Checking Menu Items
7. Toolbars and Status Bars
Toolbars
Toolbars and Commands
Status Bars
8. Dependency Properties and Routed Events
Dependency Properties
Change Notification
Property Value Inheritance
Support for Multiple Providers
Routed Events
Routing Strategies
9. Resources
Resources in WPF
Binary Resources
Logical Resources
Static versus Dynamic Resources
10. Data Binding
Binding Sources
Sharing Sources with DataContext
Data Templates
Value Converters
Collection Views
Data Providers
Visual Data Binding Using Visual Studio 2017
Database Access Using Entity Framework
11. Styles, Templates, Skins and Themes
Styles
Style Sharing
Triggers
Validation
Templates
Templated Parent's Properties
Skins
Themes
12. Windows Forms and WPF Interoperation
Mixing Forms and WPF Windows
Mixing Controls
Appendix A. Learning Resources
Hardware and Software Requirements
Required software is Visual Studio 2017, which includes LocalDB, a
lightweight version of SQL Server 2016 Express. The free Visual Studio
Community 2017 can be used. The operating system should be Windows 7SP1
or more recent. See the appropriate course Setup Guide for details.
A good minimal hardware profile for this course would have a 2 GHz or
better CPU, 2 GB of RAM (4 GB recommended), and at least 10 GB of free
disk space for tools installation and courseware.
Notice: Undefined index: HTTP_REFERER in /var/www/datadeliverance/inc/trademarks.inc on line 3
Notice: Undefined index: HTTP_REFERER in /var/www/datadeliverance/inc/trademarks.inc on line 4
Notice: Undefined variable: REMOTE_USER in /var/www/datadeliverance/inc/trademarks.inc on line 7
Notice: Undefined index: HTTP_REFERER in /var/www/datadeliverance/inc/trademarks.inc on line 7
Oracle and Java are registered trademarks of Oracle and/or its affiliates.
PL/SQL and SQL*Plus are trademarks or registered trademarks of Oracle
Corporation. Microsoft is either a registered trademark or trademark of Microsoft
Corporation in the United States and/or other countries. MVS is a registered
trademark of the International Business Machines Corp. in the U.S. or other
countries or both. Motif, OSF/1, UNIX, and the "X Device" are registered
trademarks and IT DialTone and The Open Group are trademarks of The Open Group
in the U.S. and other countries. All other trademarks are the property of
their respective owners.