2 days
					Training Overview
					This five-day course provides a practical, hands-on introduction to GUI development using 
					Windows Forms and Visual Basic. The course introduces database programming in Windows, including 
					use of Language Integrated Query (LINQ). The course covers powerful newer Windows Forms features, 
					such as controls, data binding, and ClickOnce deployment for creating smart client applications. 
					It covers interoperability with the next-generation Windows client framework, Windows 
					Presentation Foundation (WPF).
					The course begins with a fundamental discussion of Windows Forms architecture and programming 
					simple Windows Forms applications “from scratch.” Then the use of Visual Studio 2010 and the Forms 
					Designer is introduced, which is used throughout the remainder of the course. Simple controls are 
					covered, such as buttons, labels, textboxes, checkboxes, radio buttons and group boxes. List 
					controls are surveyed, including list box, combo box, list view, and DomainUpDown. Dialogs are 
					discussed in detail, including modal and modeless dialogs and associated controls. Menus, toolbars 
					and status bars are covered. 
					Advanced topics are introduced, including parent/child and owner/owned relationships, programming 
					the Clipboard, visual inheritance, the BackgroundWorker component, and ClickOnce deployment. 
					Advanced controls are introduced, including the tree view, tab control and SpliltContainer. 
					Resources are discussed, including their use in localization. The Application class is covered. 
					Applications settings are discussed, including use of configuration files and the Registry. Data access 
					and data binding are covered. The course concludes with a chapter on Windows Forms and WPF 
					interoperation.
					Numerous programming examples and exercises are provided. The student will receive a comprehensive 
					set of notes and all the programming examples.
					
						Learning Objectives
					
						- Understand the fundamentals of Windows Forms architecture 
- Acquire proficiency in the use of Visual Studio to create professional class Windows applications
- Gain a thorough grounding in the important controls provided by Windows Forms
- Learn how to implement dialogs, menus, toolbars and status bars
- Learn how to use advanced controls, such as tree views, splitters and tabbed dialogs
- Understand the use of resources and application settings in Windows Forms applications
- Learn how to implement data access using ADO.NET and binding of controls
- Use Language Integrated Query (LINQ) to access data from Windows Forms programs
- Learn how to interoperate between Windows Forms and WPF
						Audience
					This course is designed for experienced application developers 
					and architects responsible for Windows applications in a 
					Microsoft environment.
					
						Prerequisites
					Experience programming the .NET Framework using Visual Basic
					
						Training Outline
					
						- 
							Introduction to Windows Forms
							
								- What Are Windows Forms?
- Windows Forms Class Hierarchy
- Building a Form
- The Application Class
- Trapping Events
- Buttons
- Labels and Textbox Controls
 
- 
							Visual Studio and the Forms Designer
							
								- Using the Forms Designer
- Code Generated by Forms Designer
- Adding Event Handlers
- Creating Attractive Forms
- Creating Easy To Use Forms
 
- 
							Using Controls
							
								- Checkbox, Radio Button, and Group 
- Numeric Up/Down
- Trackbar
- Progress 
- MonthCalendar
- DateTimePicker
 
- 
							List Controls
							
								- Listbox and Combo box
- DomainUpDown
- ListView
- Storing Objects in List Controls
 
- 
							Working with Dialogs
							
								- Modal vs. Modeless Dialogs
- Message Boxes
- Common Dialogs
- Creating a Modal Dialog
- Configuring the Dialog Result
- Access Data from the Dialog
- Validating Data
- Error Provider Control
- Modal Dialogs
- Creating a Modeless Dialog
 
- 
							Menus, Toolbars and Status Bars
							
								- Main Menus
- Context Menus 
- Building a Status Bar
- Building a Toolbar
- Using the Timer Control
 
- 
							Advanced Windows Forms Topics
							
								- Parent/Child Relationships
- Owner/Owned Relationships
- Top-Most Forms
- Programming the Clipboard
- Visual Inheritance 
- BackgroundWorker Component
- ClickOnce Deployment
 
- 
							Using Advanced Controls
							
								- Panel
- TreeView
- TabControl
- SplitContainer
- WebBrowser
 
- 
							Resources
							
								- Image Resources
- Resource Files
- String Resources
- Working with Resources in Visual Studio
- Resource Managers
- Cultures and Internationalization
- Building Localizable Forms
 
- 
							Applications and Settings
							
								- Application Class
- Processing and Filtering Windows Messages
- Application Lifetime and Events
- Configuration Files
- Application Settings
- Windows Registry
 
- 
							 Data Access
							
								- ADO.NET Overview
- .NET Data Providers
- Using LocalDB
- DataReaders
- Data Sets
- Data Tables
- Data Views
- Interacting with XML Data 
- Language Integrated Query (LINQ)
- Bridging Objects and Data
- Using Object Relational Designer
- Filtering, Ordering and Aggregation
- Inserts, Deletes and Updates
 
- 
							 Data Binding
							
								- Data Binding Concept
- Binding to a Control
- Binding to a List
- DataGrid and DataView
- BindingSource
- DataGridView
 
- 
							Windows Forms and WPF Interoperation
							
								- Windows Presentation Foundation
- Extensible Application Markup Language (XAML)
- Mixing Forms and WPF Windows
- Mixing Controls
 
						System Requirements
					Required software is Visual Studio 2010 and SQL Server 2008 
					Express Edition (bundled with Visual Studio 2010). The operating 
					system may be Windows XP, Windows Vista or Windows 7. IIS is 
					required to demonstrate ClickOnce deployment.See the appropriate 
					course Setup Guide for details.
					A good minimal hardware profile for this course consists of a 
					2 GHz or better CPU, 1 GB of RAM, and at least 4 GB of free 
					disk space for tools installation and courseware.