Book to attend a public course Book a private course Request more information about this course Speak to an instructor
Book to attend a public course Book a private course for your team (from only £895/day!) Request more information about this course Speak to an instructor who teaches this course

Printable versions: HTML PDF

Developing Applications using Visual Basic 2008: Advanced Topics

In this course you'll learn about important development topics that aren't normally covered in a beginning Windows application programming course. Starting with an introduction to .NET interoperability, then covering topics such as Windows Management Instrumentation (WMI), and System.Drawing namespace. You'll dig deeper into working with the most complex of Visual Studio's built-in controls, the DataGridView. You’ll also investigate several new Visual Studio 2008 features, including Windows Communication Foundation (WCF), Windows Workflow Foundation (WF), and new support for Office 2007 products using Visual Studio Tools for Office. Then learn how to create custom controls, secure applications and create applications for Windows Mobile devices. You're certain to find many more topics here that will extend your knowledge, your capabilities, and your value as a developer.

Training Course Duration

5 days

Layout

The training course combines lectures with practical exercises that help the delegates to put what they have learned on the training course into practice.  The exercises specifically build on what has been recently taught and are built up as the training course progresses.

Who it is for

Developers interested in learning about the advanced features of Visual Basic.

Training Course Prerequisites

  • The course assumes that students have some programming background. No specific experience with Visual Studio 2008 or the .NET Framework is required, although this course does not focus on programming languages, but rather, on building Windows applications. You may find that it's easier for you to follow the examples in this course if you have some prior experience working with the .NET Framework using Visual Basic, or have taken a beginning programming course using Visual Basic.

Training Course Objectives

At the end of this training course, students should be able to:

  • Understand how to to use the Toolbox components
  • Work with WCF
  • Work with Serialization
  • Implement Windows Workflow Foundation
  • Build reporting applications
  • Work with WDI
  • Work with MDI
  • Printing and Print Jobs
  • Work with the DataGrid
  • Implement Graphical applications using GDI
  • Building Office 2007 Applications
  • Creating installers and setup files

Training Course Contents

1 . Working with Toolbox Components

  • Introducing Components
  • Adding Components to Your Forms
  • Timer Component
  • Using the Timer Component
  • BackgroundWorker Component
  • Understanding the Code
  • Introducing Multi-Threading with the BackgroundWorker Component
  • FileSystemWatcher Component
  • Working with FileSystemWatcher Component
  • Process Component
  • Using the Process Component
  • Process Component Methods
  • Start a Process and React When it’s Completed
  • Working with Processes
  • ServiceController Component
  • Using the ServiceController Component
  • Interacting with Windows Services
  • Working with Services
  • EventLog Component
  • Event Log Concepts
  • Using the EventLog Component
  • Working with the Server Explorer

2 . Windows Communication Foundation

  • What is Windows Communication Foundation?
  • Monolithic Applications
  • COM
  • DCOM and COM+
  • Web Services
  • Enterprise Services and .NET Remoting
  • Web Services Enhancements
  • Windows Communication Foundation
  • WCF Building Blocks
  • Service Contracts
  • Data Contracts
  • Endpoints
  • Bindings
  • Hosting a WCF Service
  • Create the WCF Service
  • Host the Service on a Web Server
  • Call the Service from a Windows Client Application
  • Self-Hosting the WCF Service
  • Call the Service from a Windows Client Application
  • Defining Multiple Endpoints for a Service
  • Configuring WCF Services
  • Configure the Host
  • Configure the Client

3 . Serialization

  • Introducing Serialization
  • Using Serialization
  • The .NET Framework and Serialization
  • Generalizing the Serialization
  • Serializing Your Own Classes
  • What Extra Information is Serialized?
  • Serializing Complex Objects
  • Serializing/Deserializing an Object Graph
  • Using Serialization to Clone Objects
  • Serializing Multiple Objects
  • Customizing the Serialization Process
  • Custom Serialization
  • Serializing to a BitArray

4 . Creating and Displaying Reports

  • Reports in Data Applications
  • Using the Report Designer
  • The ReportViewer Control
  • The ReportViewer Toolbar
  • Page Headers and Footers
  • Using Expressions
  • Grouping and Filtering Reports
  • Filtering Data in a Report at Runtime
  • One-to-Many Relationships in Reports
  • Subreports
  • Drillthrough Reports
  • Deployment Considerations

5 . Windows Workflow Foundation

  • What is Windows Workflow Foundation?
  • What Types of Applications Might Benefit from Workflow Support?
  • Creating Your First Workflow
  • Create a Sequential Workflow Project
  • Add Activities to the Workflow
  • Debug Your Workflow
  • Activities
  • IfElse Activity
  • While Activity
  • Using Rules in Workflows
  • Using a RuleSet
  • Using the Policy Activity
  • Calling Methods in Rules
  • Hosting a Workflow in a Windows Application
  • Explore the Solution
  • Host the Workflow in a Form and Pass Parameters
  • Host/Workflow Communication
  • Create the Interface
  • Call Methods in the Host from the Workflow
  • Create the Interface
  • Call Methods in the Host from the Workflow
  • Create the Interface Implementation
  • Hook Up the Plumbing
  • State Machine Workflows
  • Create the Solution
  • Run the Application

6 . Filling the .NET Gaps with WMI

  • Introducing WMI
  • WMI Background
  • Getting Started with WMI
  • The ManagmentObject Class
  • Working with Scope and the ManagementScope Class
  • The ManagementClass Class
  • WMI Queries, Properties, and Methods
  • Providing More Refined Searches
  • Investigating the SelectQuery Class
  • Modifying WMI Object Properties
  • Calling WMI Object Methods
  • WMI Server Explorer Extensions
  • Working with Management Classes

7 . WMI Events and Asynchronous Handling

  • Creating WMI Event Handlers
  • The WqlEventQuery Class
  • Tracking Creation and Deletion Events
  • Working with WMI Asynchronously
  • Introducing the ManagementOperationObserver Class
  • WMI Server Explorer Extensions and Events
  • Creating Strongly Typed Event Queries

8 . Creating MDI Applications

  • MDI Application
  • Child Windows
  • Creating an MDI Application
  • MDI Parent and Child Forms
  • MDI Parent Form
  • MDI Child Forms
  • Managing Open Windows
  • Automatically Creating a Window List
  • Manually Creating a Window List
  • Arranging Windows
  • Managing Menus
  • Merging Menus
  • Using One Menu Rather than Merging Menus
  • Working with Open Forms
  • Handling the MdiChildActivate Event
  • Handling Edit Menu Items
  • Passing Data between Open Forms
  • Handling Form Closing

9 . Printers and Printing

  • The PrintDocument Class
  • Introducing the PrintDocument Class
  • Creating a Tabular Report
  • The Page Settings Class
  • Handling Enumerated Properties
  • The PrinterSettings Class
  • Working with Printers
  • Working with Print-Related Controls
  • The PageSetupDialog Control
  • The PrintDialog Class
  • The PrintPreviewDialog Control
  • The PrintPreviewControl Control
  • A More Complex Report
  • Determining Page Dimensions
  • Printing the Images Report

10 . Examining the DataGridView

  • Controlling Appearance in Grids
  • Working with Columns
  • Working with Rows
  • Working with Cells
  • Formatting and Styles
  • Custom Cell Templates
  • Working with Data in Grids
  • Populating Grids in Code
  • Data Entry in Grids
  • Displaying Objects in Grids
  • Sorting in Grids

11 . Creating Rich User Interfaces with GDI+

  • Introducing Drawing in the .NET Framework
  • Learn to Paint
  • Investigating Drawing
  • Creating Owner-Drawn Controls
  • Creating a ListBox Using OwnerDrawFixed DrawMode
  • Using Different Item Heights
  • Creating Images on Menus
  • Creating Non-Rectangular Forms
  • Setting a Form’s Region Property
  • Setting a Forms’ TransparencyKey Property
  • Dynamically Modifying the Form’s User Interface
  • Creating a Custom DataGridView Control Column

12 . Creating Office Applications Using Visual Studio 2008

  • Introducing Office Projects in Visual Studio 2008
  • What Can You Do with Office?
  • Document vs. Application Customizations
  • Ribbon Customizations and Custom Task Panes
  • Creating Ribbon Customizations
  • An Important Tool: Office Ribbon IDs
  • Lay Out the Tab and Group
  • Adding the Data Source
  • Adding Data and Hooking Events
  • Creating a Custom Task Pane
  • Managing the Task Pane Display
  • Handle the Task Pane and ToggleButton
  • Work with Word 2007’s Content Controls
  • Creating a Form Using Content Controls
  • Add a Data Source
  • Adding the Content Controls
  • Programming Content Controls
  • Enhancing Data Binding
  • Create an Outlook Form Region
  • Create the Add-In Projects
  • Create the Data Source
  • Lay Out the Form Region’s Contents
  • Add Code to Populate the Mail Message
  • What’s Next?

13 . Extending Visual Studio 2008

  • Getting Started
  • Creating Your Own Templates
  • Creating an Item Template
  • Modifying an Item Template
  • Managing Item Templates
  • Organizing Item Templates
  • Creating Your Own Project Templates
  • Creating a Project Template
  • Managing Project Templates
  • Organizing Project Templates
  • Using and Creating Code Snippets
  • Using Code Snippets
  • Managing Code Snippets
  • The Code Snippet File
  • Creating and Modifying Code Snippets
  • Using Macros to Automate the IDE
  • Recording and Running a Macro
  • Examining the Macro Code
  • Saving Macros
  • Macro Projects

14 . Handling Versioning Issues

  • Before You Begin
  • Assemblies
  • Version Numbers
  • How the CLR Locates Assemblies
  • Private Assemblies
  • Using Configuration Files
  • Strong Naming Assemblies
  • Redirecting
  • Shared Assemblies
  • The Global Assembly Cache
  • Installing an Assembly in the GAC
  • Using Shared Assemblies
  • Referencing Shared Assemblies

15 . Creating Windows Services

  • Introducing Windows Services
  • Things to Consider
  • Building Your First Windows Service
  • Building the Windows Service
  • The FileWatcher Service
  • Introducing the FileSystemWatcher Class
  • The OnStart Event Procedure
  • Debugging Your Service
  • What’s Next?

16 . Building Mobile Applications

  • .NET Compact Framework
  • Developing for Devices
  • Device Emulators
  • WindowsMobile Class Library
  • Displaying Status Information
  • Detecting Status Changes
  • Mobile Database Applications

17 . Reading and Writing XML Using the XML DOM

  • Getting Started
  • Introducing the XML Document Object Model
  • Reading XML Data
  • Load XML Data
  • Work with a Node’s Children
  • Iterate through All Nodes
  • Retrieve Element Nodes
  • Retrieve Just Text Nodes
  • Working with Nodes
  • Retrieve Nodes Matching a Criterion
  • Searching with XML Namespaces
  • Retrieve a Reference to a Particular Node
  • Navigate to Related Nodes
  • Retrieve Attributes of a Node
  • Creating and Modifying XML
  • Create XML Programmatically
  • Add or Delete Elements
  • Remove All Nodes and Attributes
  • Add or Delete Attributes
  • Modify the Value of an Element
  • Modify the Value of an Attribute
  • Dealing with Errors
  • Determine if XML isn’t Well Formed
  • Handling XML Loading Errors

18 . Using the XmlReader, XmlWriter, and XPath to Work with XML

  • Getting Started
  • Working with XML Data
  • Reading XML with XmlReader
  • Read and ReadToFollowing Methods
  • ReadToDescendant and ReadToNext Sibling Methods
  • ReadInnerXml and ReadOuterXml Methods
  • Validating XML with the XmlReaderSettings Class
  • Writing XML with XmlWriter
  • Writing an XML Document
  • Formatting XML
  • Writing Namespaces
  • Writing Typed Data
  • Reading and Rewriting XML
  • Searching XML with XPath
  • Classes in the System.Xml.Xpath Namespace
  • XPath Expressions
  • Compiled XPath Expressions

19 . Data Improvements

  • Hierarchical Updates
  • Hierarchical Updates in Visual Studio 2005
  • Hierarchical Updates in Visual Studio 2008
  • Caching Data Locally
  • Synchronization Services for ADO.NET
  • Configuring the Application for Synchronization
  • Using Local and Remote Data in the Application
  • Synchronizing Local and Remote Data
  • Adding Bidirectional Synchronization
  • Creating N-Tier Data Applications
  • Separating the Business Logic and Data Access Layers
  • Building Data Application with LINQ to SQL
  • Creating a Data Model
  • Creating a Data Entry Form
  • Calling Stored Procedures

20 . Creating Custom Controls

  • Control Creation in Windows Forms
  • Inheriting from an Existing Control
  • Required Steps
  • Creating a TextBox with Required Input
  • Adding the Finishing Touches
  • Drawing Your Own Custom Controls
  • Inheriting from the Control Base Class
  • Control Properties
  • Drawing the Control
  • Default Values and Serializing Properties
  • Raising Events
  • Hiding Properties
  • Adding Ease-of-Use Features
  • Creating Composite Controls
  • Required Steps
  • Designer Support for Properties
  • Handling Events
  • Setting the Default Control Text
  • Serializing the Text Property
  • Data Binding

21 . Securing Windows Applications

  • Security in the .NET Framework
  • Code Access Security
  • Evidence
  • Security Policy
  • How the CLR Grants Permissions
  • Configuring Security Policy
  • Checking for Permissions
  • Code Access Permissions
  • Using Imperative Syntax
  • Using Declarative Syntax
  • Role-Based Security
  • Identity
  • Principal
  • PrincipalPermission

22 . Building Setup Applications

  • Windows Installer Deployment
  • Creating a Setup Project
  • Customizing a Setup Project
  • Setup Project Properties
  • Deployment Editors

23 . Attributes and Reflection

  • Introducing Attributes
  • Attributes in Visual Basic 6
  • Attributes in .NET
  • Attributes as Classes
  • Using Attrition in Managed Code
  • Where Are Attributes Applied?
  • Creating and Using Custom Attributes
  • Building a Custom Attribute Class
  • Using a Custom Attribute
  • Retrieving Attribute Values at Runtime
  • Introducing Reflection
  • Working with Assemblies, Modules, and Types
  • Working with Types
  • Retrieving Type Members
  • Using Reflection to Perform Late Binding
  • Why Use Late Binding?
  • Why Not Use Late Binding?
  • What Does Reflection Get You?

24 . Client Application Services

  • Membership, Roles, and Profiles on the Web
  • Introducing Membership Management in ASP.NET
  • Introducing Role Management in ASP.NET
  • Data Has to Go Somewhere
  • Configuring Membership and Roles
  • Working with Roles
  • Client Application Services
  • Configuring Client Application Services
  • Using the Authentication Service
  • Using the Roles Service
  • Using the Profiles Service
  • Create Your Own Membership and Role Providers