TGN

Writing Visual Basic WPF Applications


This 5 day course covers the Visual Basic language and its use for developing Windows desktop applications with the Windows Presentation Framework. A basic knowledge of programming is assumed, though not any particular language. We also offer alternative courses for those targetting other technologies such as ASP.Net or Windows Forms.

The 5 day course costs £2950 in total for up to 6 students, plus VAT and the instructor's reasonable expenses. Each student beyond 6 would cost £25 for the additional course materials.

If you are interested in this course, please contact us by email at enquiries@tgn.co.uk or by phone on
+44 (0)1285 713297.

Introduction

The .Net platform. The Common Language Runtime (CLR) and Intermediate Language. Visual Basic, its alternatives and variations. The Visual Basic environment. Introducing object orientation. Good practice.

Using Variables

Variable Types, Scope and Lifetime. Nullable types. Arrays.

Control Flow

If, For Next, Do While/Until, For Each, Select Case.

Structured Programming

Subroutines and functions. Argument passing mechanisms. Named and optional arguments. Public, Private and the use of modules.

Object Orientation

Software engineering and components. Classes, objects and the use of 'New'. Encapsulation. Namespaces and assemblies. Benefits of object orientation.

Inheritance

The use of 'Overridable' and 'Overrides'. Benefits of inheritance. Hiding and Shadows. Abstract classes. Constructors and initialization. Casting. Collection classes. Generics. Collection examples.

Interfaces

The benefits of interfaces. Interfaces vs classes. Defining and implementing an interface. Common interfaces.

Exception Handling

Comparison with 'Err' and 'On Error'. Try and Catch. Finally. Custom Exceptions.

Files, Streams and Networking

The .Net Stream architecture. Streams, Readers and Writers. Serialization and SOAP. The Socket and Tcp classes. Basic network communication. Clients and multithreaded servers.

Introduction to WPF

What WPF is for. XAML. WPF and Silverlight. The technologies. The tools. Patterns and Model-View-ViewModel.

Designing a user interface with XAML

What is XAML?. XAML details. Designing a window. Basic controls. Properties and attached properties. Panels and layouts. Code-behind and simple events.

Event handling

The event architecture. Event bubbling and routed events. Tunnelling and preview events. Commands.

Containers and layouts

Panels. Canvas and absolute positioning. Wrap and Stack Panels. Margins, sizes and alignment. DockPanel. Grid and UniformGrid. Splitting and scrolling. Controls as containers.

WPF controls

How WPF controls work. Drawing and presentation. Defining and using styles. Control templates. Triggers and the Visual State Manager. Custom controls. Adapting to themes.

Databases and ADO.Net

Connections, commands and readers. DataSets and adapters. Typed DataSets. DataSource controls. Data-aware controls and grids. Stored procedures and transactions. Designing and implementing multi-tier applications.

Data binding

Connecting controls. Binding to objects. Binding modes. Syntax alternatives. Using data contexts. Events and updating. Hierarchies and customization. Managing data sources.

Using Windows Forms

Using Windows Forms from WPF. Using WPF from Windows Forms. Compatibility considerations. Integrating existing application code.

Graphics and animation

Shapes and colours. Designing a visually interesting user interface. Creating graphics dynamically. Bitmaps and images. Storyboards and animation.

Introducing the 3rd dimension

Coordinate systems and geometry. The ubiquitous triangle. Cameras and lighting. Models, meshes and materials. Building shapes. Practical examples.

Silverlight

What Silverlight is (and what it isn't). Silverlight site architecture. XAML. Containers, shapes and controls. Designing the user experience. Storyboards and animation. Rendering and transforms. Interaction and code-behind. Images, effects and projections. Exposing Silverlight to JavaScript. Binding.

LINQ

How LINQ works. Implicitly-typed variables and Lambda expressions. The LINQ syntax. Using LINQ with collections, databases and XML. Parallel LINQ (PLINQ).

XML

Introducing XML. XmlTextReader. Using the Document Object Model (DOM) and XMLDocument. XMLDataDocuments. Creating XML using XmlWriter. LINQ and the 'X' classes.

Advanced Language Features

Passing parameters ByVal and ByRef. Variable length parameter lists. Extension methods. Operator overloading. Dispose and Using. Delegates and multicast delegates. Calling Dlls and the Windows API (PInvoke).

The Dynamic Language Runtime

Supporting dynamic languages. ExpandoObject. DynamicObject. Office support.

Multitasking

Parallel execution. Parallel For and ForEach. Tasks, threads and the thread pool. Priorities and background threads. Background workers. Synchronization and monitors. Controlling tasks and threads. Starting and controlling processes.

Deployment

XCopy deployment. DLLs and the Global Assembly Cache (GAC). Signing. strong names and versioning. No-touch and click-once deployment.

Copyright © 1996 - 2010 The Graphics Network Ltd. Registered in England No. 2549085
All trademarks used on this site are respectfully acknowledged.
Microsoft is a registered trademark of Microsoft Corporation in the United States and other countries.