Windows Client Application Design The goal of this module is to ensure that students understand how varying business requirements influence the design decisions when planning a Windows Client application. Students will learn how design requirements, specifications, and business goals affect the choice between WPF and Windows Forms when updating (or planning a new) Windows Client application.
- Lessons Windows Client Technologies Architectural Patterns Interoperability between Windows Forms and WPF
- Lab : Planning Windows Client Applications Identify Windows Client Technologies Choosing Design Patterns Lab Application Guided Walk-Through
Introduction to Visual Studio 2010 and WPF Version 4 The goal of this module is to introduce students to the new features that Visual Studio 2010 and WPF version 4 provide
- Lessons Whats New in Visual Studio 2010? Whats New in WPF Version 4
- Lab : Guided Tour of Visual Studio 2010 and XAML Guided tour of Visual Studio 2010 Guided tour of XAML Editor
Designing and Developing a User Interface The goal of this module is to teach the student how to design and build a UI that provides the expected end-user experience and UI functionality, and retains that experience/functionality in various end-user environments, as well as when the application window resizes.
- Lessons Defining Page Layout Using Content Controls Using Item Controls Sharing Logical Resources in a Window
- Lab : Building a User Interface Choosing User Interface Controls Laying out the User Interface Creating and Using Resource Dictionaries
Taking Control of the User Interface The goal of this module is to enable students to create a consistent and manageable user interface.
- Lessons Sharing Logical Resources in an Application Creating Consistent User Interfaces by Using Styles Changing the Appearance of Controls by Using Templates Handling Events and Commands
- Lab : Dynamically Controlling the User Interface Creating Styles Using Application Commands Adding Routed Events Creating a Custom Command Migrating a Custom Command
Testing, Unit Testing, and Debugging The goal of this module is to help students to develop good habits in regard to testing as well as enabling students to debug their applications. Students will also learn about advanced exception handling pertaining directly to Windows Client application scenarios
- Lessons WPF Testing Strategies Debugging XAML Providing User Feedback for Unhandled Exceptions Understanding Security Features
- Lab : Testing and Debugging WPF Applications Unit Testing Strategy Unit Testing WPF Applications Debugging Applications in Visual Studio 2010 Advanced Exception Handling
Simple Data Binding and Validation The goal of this module is to teach the student how to implement simple data binding and data validation in order to manage data in a data source (CRUD). In addition to learning how to bind a value to a UI element, the student should learn best practices concerning when to use the various implementations of data binding and how to connect to a data source with LINQ.
- Lessons Overview of Data Binding Creating a Data Binding Implementing Property Change Notification Converting Data Validating Data Presenting Data at Design Time
- Lab : Data Binding Binding Controls Implementing Value Converters Validating Data Implementing Property Change Notifications
Data Binding to Collections The goal of this module is to enable the student to implement more advanced data binding scenarios, picking up where the previous module on data binding left off. The student will learn how to bind to ListView, GridView, DataGrid, and other collection classes.
- Lessons Binding to Collections of Objects Using Collection Views Creating Master-Detail User Interfaces Using Data Templates Presenting Design Time Data Collections
- Lab : Data Binding to Collections Binding to Collections of Data Using Collection Views Creating Master-Detail User Interfaces Using Data Templates
Enhancing UI Responsiveness The goal of this module is to teach the students how coding techniques can be used to improve the responsiveness of their applications.
- Lessons Implementing Asynchronous Processes Implementing Responsive User Interfaces
- Lab : Enhancing Application Performance Asynchronous Programming Strategy Asynchronous Programming Parallelizing Tasks
Integrating Localization and User Assistance Features The goal of this module is to teach students how to implement localization, user assistance, and accessibility features within an application.
- Lessons Localization and Globalization Implementing User Assistance Features Providing User Accessibility Features
- Lab : Localizing a WPF Application Preparing for Localization for the LocBAML Approach Localizing Resources by Using LocBAML Preparing for Localization by Using Strongly Typed Resources Localizing Resources by Using Strongly Typed Resources Choosing a Localization Approach
WPF 2D Graphics, Multimedia, and Printing The goal of this module is to teach the students the basics of graphics in WPF. The module will also provide an overview of multimedia (audio and video).
- Lessons Displaying 2D Graphics Displaying Images Adding Multimedia to WPF Applications Creating and Printing Documents
- Lab : Drawing 2-D Graphics Identify the Appropriate Windows Client Technology Creating the Data Access Layer and User Interface Drawing Shapes, Painting with Brushes and Appling Effects Adding Images
Control Customization The goal of this module is to teach students how to customize controls and introduce students to custom controls.
- Lessons Overview of Control Authoring Creating User Controls Creating Custom Controls Managing Control Appearance by Using Visual States Integrating WPF and Windows Forms
- Lab : Building a User Control Identify the Approach Control Type Creating a User Control in WPF Adding a WPF Control to a Windows Forms Application
Attached Properties and Behaviors in WPF The goal of this module is to teach the students how to implement application behaviors based on user actions or application events by using attached properties and Expression Blend behaviors.
- Lessons Implementing Attached Properties Implementing Drag-and-Drop User Interfaces Implementing Expression Blend Behaviors, Triggers and Actions
- Lab : Implementing Drag-and-Drop Operations Implementing Drag-and-Drop Operations Implementing Expression Blend Behaviors
Animations in WPF The goal of this module is to teach the student how to implement animations and to teach students how to develop data visualization within their applications in a manner that enables the application user to drill down into data visually. Students should also learn when animations should be used and why.
- Lessons Using Animations Using Triggers Implementing Data Visualizations
- Lab : Creating Animations Creating Animations Declaratively Creating Animations Dynamically Creating Routed Events Handling Routed Events
Application State, Settings, and Lifecycle The goal of this module is to teach students how to manage application state and settings throughout the application lifecycle.
- Lessons Creating Application Settings Consuming Application Settings Creating Custom Configuration Sections
- Lab : Creating a Settings Dialog Creating Application and User Setting by Using Visual Studio Creating a Dialog Window Reading and Writing Settings Consuming Settings Properties
Configure and Deploy Windows Client Applications The goal of this module is to teach students how to deploy their applications using the various methods supported by Visual Studio 2010.
- Lessons Deployment Options Deploying a Standalone WPF Application Deploying an XBAP Application Configuring Security Settings
- Lab : Deploying Applications Developing a Standalone Installer Configuring a ClickOnce Deployment Updating a ClickOnce Deployment