Introduction
Elements of
this syllabus are subject to change.
This two-day
instructor-led workshop provides students with
the knowledge and skills to develop advanced
Microsoft Windows Forms applications using
Microsoft Visual Studio 2005. The workshop
focuses on user interfaces, program structure,
and implementation details.
Audience
This workshop is
intended for corporate or independent software
vendor (ISV) application developers who have a
desire to learn more about specific technology
areas in Windows application development.
At Workshop
Completion
After
completing this workshop, students will be able
to:
|
• |
Build MDI
applications. |
|
• |
Customize
Windows Forms and controls. |
|
• |
Create
customized print components. |
|
• |
Perform
drag-and-drop operations and implement
Clipboard support. |
|
• |
Perform
asynchronous tasks in Windows Forms by
using multithreaded techniques. |
|
• |
Enhance
the presentation of Windows Forms
applications. |
Prerequisites
Before
attending this workshop, students must:
|
• |
Have
attended or studied Workshop 2546A, Core
Windows Forms Technologies with Visual
Studio 2005 or possess equivalent
knowledge and skills. |
|
• |
Be able to
manage a solution environment using the
Visual Studio 2005 integrated
development environment (IDE) and tools. |
|
• |
Be able to
program an application using a Microsoft
.NET Framework 2.0 compliant language,
including the use of delegates and
events. |
|
• |
Understand
advanced concepts including
serialization, reflection, application
domains, and multithreading. |
Workshop
Outline
Unit 1:
Building MDI Applications
This unit
explains how to create multiple-document
interface (MDI) applications that enable one
parent window to host multiple documents. It
demonstrates how to create MDI parent and child
forms and how to determine the active MDI child
and work with information on it. It also
explains how to implement menu merging in an MDI
application to make the menu on the parent form
relevant to the active child form.
Lessons
|
• |
Windows
Forms Layout Options. |
|
• |
What Are
MDI Applications? |
Lab 1:
Building MDI Applications
|
• |
Exercise
1. Creating MDI Parent and Child Forms. |
|
• |
Exercise
2. Displaying and Comparing Information
on MDI Child Forms. |
|
• |
Exercise
3. Implementing Menu Merging in MDI
Applications. |
After
completing this unit, students will be able to:
|
• |
Compare
the different layout styles for
Microsoft Windows Forms applications. |
|
• |
Explain
the key concepts and processes involved
in implementing an MDI application. |
|
• |
Create MDI
parent and child forms. |
|
• |
Display
and compare information on MDI child
forms. |
|
• |
Implement
menu merging in an MDI application. |
Unit 2:
Customizing Windows Forms and Controls
This unit
explains how to develop custom Microsoft Windows
Forms and controls. Students will learn how to
develop user controls, use GDI+ operations, and
create new controls that inherit from the
Control class. In addition, it demonstrates how
to create a nonrectangular Windows Form and how
to add features such as attributes and Toolbox
bitmaps to controls.
Lesson
|
• |
What Are
the Methods of Authoring Controls for
Windows Forms? |
|
• |
Ways to
Draw a User Interface by Using GDI+. |
|
• |
Creating a
Nonrectangular Windows Form. |
Lab 2:
Customizing Windows Forms and Controls
|
• |
Exercise
1. Creating a Control that Inherits from
an Existing Control. |
|
• |
Exercise
2. Creating a Nonrectangular Windows
Form. |
|
• |
Exercise
3. Creating a Custom User Control. |
After
completing this unit, students will be able to:
|
• |
Explain
the methods of authoring controls for
Windows Forms. |
|
• |
Draw a
user interface by using GDI+. |
|
• |
Create a
control that inherits from an existing
control. |
|
• |
Create a
nonrectangular Windows Form. |
|
• |
Create a
custom user control. |
Unit 3:
Creating Customized Print Components
This unit
explains how to print content from a Microsoft
Windows Forms application by using the printing
features of GDI+. Students will learn how to
keep track of multiple pages when printing and
render page content correctly.
Lesson
|
• |
Printing
Features that Are Supported by .NET
Framework 2.0. |
|
• |
Drawing
Print Document Content by Using GDI+. |
Lab 3:
Creating Customized Print Components
|
• |
Exercise
1. Printing a Report by Using GDI+. |
|
• |
Exercise
2. Creating a Customized Print Preview
Dialog Box (if time permits). |
After
completing this unit, students will be able to:
|
• |
Describe
the printing features that are supported
by .NET Framework 2.0. |
|
• |
Explain
how to use GDI+ to draw print document
content. |
|
• |
Print
content by using GDI+. |
|
• |
Describe
best practices for creating custom print
components. |
Unit 4:
Performing Drag-and-Drop Operations and
Implementing Clipboard Support
This unit
introduces the properties, methods, and events
that can be used to implement drag-and-drop
functionality in a Microsoft Windows Forms
application. Students will learn how to start
and finish drag-and-drop operations and,
specifically, how to implement drag-and-drop
operations with a TreeView control. In addition,
this unit demonstrates how to use the Clipboard
to store and retrieve data.
Lessons
|
• |
Drag-and-Drop Operations in Windows
Forms Applications. |
|
• |
Adding
Clipboard Support in Windows Forms
Applications. |
Lab 4:
Performing Drag-and-Drop Operations and
Implementing Clipboard Support
|
• |
Exercise
1. Implementing Drag-and-Drop
Functionality in a Windows Forms
Application. |
|
• |
Exercise
2. Adding Clipboard Support to an
Application. |
|
• |
Exercise
3. Performing Drag-and-Drop Operations
by Using TextBox and PictureBox Controls
(if time permits). |
After
completing this unit, students will be able to:
|
• |
Describe
the phases of a drag-and-drop operation. |
|
• |
Describe
the methods that you can use to provide
Clipboard support. |
|
• |
Implement
drag-and-drop functionality in a Windows
Forms application. |
|
• |
Add
Clipboard support to an application. |
Unit 5:
Performing Asynchronous Tasks by Using
Multithreaded Techniques
This unit
demonstrates how to create Microsoft Windows
Forms applications that can run tasks in the
background. It explains how to make use of the
asynchronous methods and other features of
components that support the Asynchronous Pattern
for Components. Students will also learn how to
use the classes in the System.Threading
namespace to run one or more tasks in the
background by using multiple threads in an
application.
Lessons
|
• |
Asynchronous Programming in Windows
Forms Applications. |
|
• |
Creating
Thread-Safe Applications. |
Lab 5:
Performing Asynchronous Tasks by Using
Multithreaded Techniques
|
• |
Exercise
1. Loading a Bitmap Asynchronously. |
|
• |
Exercise
2. Performing Calculations by Using
Multithreading. |
After
completing this unit, students will be able to:
|
• |
Explain
the concepts and processes that are
involved in performing asynchronous
programming. |
|
• |
Load a
bitmap into a Windows Forms application
asynchronously. |
|
• |
Perform
multiple simultaneous calculations on a
form by using multithreading. |
Unit 6:
Enhancing the Presentation of Windows Forms
Applications
This unit
describes several of the features that can be
used when creating professional-looking
applications. Students will learn how to build a
Windows Form that has the appearance of
Microsoft Office Outlook and how to configure a
customized master/detail DataGridView control.
In addition, this unit explains how to
incorporate the PropertyGrid component and
application settings features that enable users
to edit and save their preferences.
Lessons
|
• |
Enhancing
Application User Interfaces. |
|
• |
Customizing the DataGridView Control. |
|
• |
Application Settings and the
PropertyGrid Control. |
Lab 6:
Enhancing the Presentation of Windows Forms
Applications
|
• |
Exercise
1. Programming the DataGridView Control. |
|
• |
Exercise
2. Viewing and Persisting Application
Settings by Using the PropertyGrid
Control. |
|
• |
Exercise
3. Implementing a User Interface in the
Style of Outlook by Using RAD Features. |
After
completing this unit, students will be able to:
|
• |
Describe
several key features involved in
enhancing an application user interface. |
|
• |
Describe
how to customize the DataGridView
control. |
|
• |
Explain
the concepts of Windows Forms
application settings and the
PropertyGrid control. |
|
• |
Program
the DataGridView control. |
|
• |
View and
persist application settings by using
the PropertyGrid control. |
|
• |
Implement
a user interface in the style of Outlook
by using rapid application development
(RAD) features. |