MS-10262 - Developing Windows Applications with Visual Studio 2010

In this course, experienced developers who know the basics of Windows Forms development gain more advanced Windows Client design and development skills. WinForms and WPF programming models, as well as relative strengths and when to use each technology, are covered.

Click here to print this page »


Before attending this course, students must have:
  • An understanding of the problem-solving techniques that apply to software development, including the following principles of software development:
  • modern software development models
  • typical phases of a software development lifecycle
  • concepts of event-driven programming
  • concepts of object-oriented programming
  • creating use-case diagrams
  • designing and building a user interface
  • developing a structured application
  • A general understanding of the purpose, function, and features of following .NET Framework topics:
  • Common Language Runtime
  • .NET Framework class library
  • Common Type System
  • Component interoperation
  • Cross-Language Interoperability
  • Assemblies in the Common Language Runtime
  • Application Domains
  • Runtime hosts supported by the .NET Framework
  • Experience using Visual Studio 2008 in the following task areas:
  • Declaring and initializing typed variables using the Camel case naming convention
  • Using arithmetic, relational, and logical operators in code statements
  • Using branching statements to control code execution
  • Using looping statements to iterate through collections or repeat steps until a specified condition is met
  • Creating classes and methods to establish the basic structure of an application
  • Using methods and events to implement the programming logic of an application
  • Identifying syntax and logic errors
  • Accessing and managing data from a data source
  • Experience in object oriented design and development as follows:
  • Creating and accessing classes and class properties
  • Creating and accessing methods and overloaded methods
  • Implementing inheritance, base classes, and abstract classes
  • Declaring, raising, and handling events
  • Responding to and throwing exceptions
  • Implementing interfaces and polymorphism
  • Implementing shared and static members
  • Implementing generics
  • Creating components and class libraries
  • Experience in N-Tier application design and development as follows:
  • Managing a software development process
  • Controlling input at the user interface level in Windows Client applications
  • Debugging, tracing, and profiling .NET applications
  • Monitoring and logging .NET applications
  • Implementing basic testing best practices
  • Performing basic Data Access tasks with LINQ
  • Basics of LINQ to XML
  • Basics of LINQ to Entities
  • Basics of LINQ to SQL
  • Implementing basic security best practices in .NET Applications
  • Basics of Code Access Security
  • Basics of Role-Based Security
  • Basics of Cryptography Services
  • Implementing basic service calls
  • Basics of consuming XML Web Services
  • Basics of consuming WCF Services
  • Using .NET Configuration Files
  • Deploying .Net Framework Applications using ClickOnce and the MS Installer

Detailed Class Syllabus

Module 1: Windows Client Application Design

Windows Client Technologies
Architectural Patterns
Interoperability between Windows Forms and WPF

Module 2: Introduction to Visual Studio 2010 and WPF Version 4

What’s New in Visual Studio 2010?
What’s New in WPF Version 4

Module 3: Designing and Developing a User Interface

Defining Page Layout
Using Content Controls
Using Item Controls
Sharing Logical Resources in a Window

Module 4: Taking Control of the User Interface

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

Module 5: Testing, Unit Testing, and Debugging

WPF Testing Strategies
Debugging XAML
Providing User Feedback for Unhandled Exceptions
Understanding Security Features

Module 6: Simple Data Binding and Validation

Overview of Data Binding
Creating a Data Binding
Implementing Property Change Notification
Converting Data
Validating Data
Presenting Data at Design Time

Module 7: Data Binding to Collections

Binding to Collections of Objects
Using Collection Views
Creating Master-Detail User Interfaces
Using Data Templates
Presenting Design Time Data Collections

Module 8: Enhancing UI Responsiveness

Implementing Asynchronous Processes
Implementing Responsive User Interfaces

Module 9: Integrating Localization and User Assistance Features

Localization and Globalization
Implementing User Assistance Features
Providing User Accessibility Features

Module 10: WPF 2D Graphics, Multimedia, and Printing

Displaying 2D Graphics
Displaying Images
Adding Multimedia to WPF Applications
Creating and Printing Documents

Module 11: Control Customization

Overview of Control Authoring
Creating User Controls
Creating Custom Controls
Managing Control Appearance by Using Visual States
Integrating WPF and Windows Forms

Module 12: Attached Properties and Behaviors in WPF

Implementing Attached Properties
Implementing Drag-and-Drop User Interfaces
Implementing Expression Blend Behaviors, Triggers and Actions

Module 13: Animations in WPF

Using Animations
Using Triggers
Implementing Data Visualizations

Module 14: Application State, Settings, and Lifecycle

Creating Application Settings
Consuming Application Settings
Creating Custom Configuration Sections

Module 15: Configure and Deploy Windows Client Applications

Deployment Options
Deploying a Standalone WPF Application
Deploying an XBAP Application
Configuring Security Settings