About this course

Course type Performance Plus
Course code QASMTNET4
Duration 5 Days

With the advent of C# 4.0 and Visual Studio 2010 Microsoft have passed the mantle of Windows application development onto WPF (Windows Presentation Foundation) and you may be forgiven for thinking that Windows Forms is therefore a dead technology. The writing is certainly on the wall for Windows Forms, however, it is likely that for some time yet most Windows applications will continue to be developed using this older, more established technology (even in a Visual Studio 2010 .NET 4.0 environment!). This course will provide you with the skills necessary to create a good looking Windows application, providing you with comprehensive coverage of this still relevant technology.

One of the main reasons for continuing the use of the Windows Forms technology is that the approach is often familiar and certainly intuitive to developers (especially those with a VB6 or MFC background) and it is still a powerful, yet easy to use, platform for creating compelling Windows applications.

WPF on the other hand requires a paradigm shift in thinking that many find difficult to comprehend, that coupled with a Visual Studio toolset that still requires some work makes Windows Forms a tempting proposition. With rich support for data binding, powerful layout and localisation features, support for multithreading and Microsoft Office-style tool- and menu-strip controls, developers can produce great looking, feature rich and responsive applications in record time.

Target Audience:

This course is ideal for Developers and Team Leaders who will be using Windows Forms and the Microsoft .NET Framework to write and deploy Windows applications.

Prerequisites

  • Delegates should already have experience of using the C# or Visual Basic .NET programming languages, which can be gained by attending one of our C# or Visual Basic .NET programming language courses
  • Knowledge of GUI programming, using technologies such as Visual Basic 6, Microsoft Foundation Classes (MFC) would be an advantage, but it is not required

Delegates will learn how to

At the end of this course you will be able to:

  • Use Microsoft Visual Studio 2010 to create Windows Forms applications
  • Configure and deploy an application using ClickOnce deployment
  • Work with the new menu and tool-strip controls
  • Use LINQ and the Entity Framework along with data binding techniques to minimise the amount of code needed to create data-driven applications
  • Work with resources to produce applications for international markets
  • Design user interfaces that provide help and which validate user input
  • Manipulate and utilise application and user settings within their programs
  • Create Windows Forms applications that work correctly with multiple threads of execution
  • Go beyond the RAD features of Microsoft Visual Studio 2010 to create scalable and maintainable Windows Forms applications
  • Interop with Microsoft Office documents
  • Integrate WCF (Windows Communication Foundation) Web Services into their Windows Forms applications, and understand how to call Web Services asynchronously to improve performance
  • Explain how Windows Forms relates to Windows Presentation Foundation and know how to host WPF controls in a Windows Forms environment

Outline

Module 1: Hello, Windows Forms

  • Fundamentals of Windows Programming
  • Building your first form; Adding controls
  • Handling basic events; Displaying a MessageBox
  • Overview of the Windows Forms controls
  • Creating a Windows Forms application using Microsoft Visual Studio 2010

Module 2: Menus and Toolbars

  • Creating menus with the MenuStrip
  • Using the ToolStrip; Adding context menus
  • Docking with ToolStripContainer
  • Using a StatusStrip

Module 3: Working with Forms

  • Creating forms; Form ownership
  • Anchoring and docking
  • Hiding and showing forms
  • Critical Form events
  • Encapsulation of controls
  • Controlling Secondary Form instancing (Singleton pattern vs hiding)

Module 4: Dialog Boxes

  • Creating modal forms
  • Using the common dialog boxes
  • Laying out controls (TableLayoutPanel and FlowLayoutPanel)
  • Exchanging data with forms
  • Validation techniques
  • Using the ErrorProvider control
  • Form-level validation
  • Context sensitive help and the HelpProvider

Module 5: Managing Settings

  • Saving and loading settings
  • Preserving form and control layouts
  • Application and per-user settings

Module 6: Resources and Localisation

  • Using resources
  • Globalisation
  • Localisation
  • Satellite assemblies
  • Creating internationalisable applications

Module 7: Beyond RAD

  • The Application object
  • Controlling application instancing
  • Implementing Model-view-controller
  • Implementing Command pattern

Module 8: Data Binding

  • Simple data binding
  • Complex data binding
  • Data binding using Microsoft Visual Studio 2010
  • Working with different binding sources
  • Data views; Sorting and Filtering
  • The DataGridView control
  • Designing types to support data binding

Module 9: LINQ and the Entity Framework

  • The ADO.NET overview
  • LINQ syntax;
  • Overview of the Entity Framework;
  • Retrieving and managing Data using LINQ to Entities

Module 10: Working with WCF Web Services

  • Locating and calling a Web Service
  • Working with proxies and security credentials
  • Asynchronous Web Service invocations

Module 11: Asynchronous Programming

  • Using timers
  • Using a secondary thread
  • Multithreading and the Windows user interface
  • Using the BackgroundWorker component

Module 12: Components and Controls

  • What is a component?
  • Creating a custom control
  • Creating a custom component
  • Introduction to design time integration

Module 13: Office Automation

  • Overview of COM interop
  • The Runtime Callable Wrapper
  • Automating Microsoft Word and Excel

Module 14: Printing

  • Print documents
  • Print controllers
  • Working with common printer dialogs
  • Implementing print preview

Module 15: Working with ClickOnce Deployment

  • Versioning and rollback
  • Controlling ClickOnce programmatically
  • Trust, Code Access Security (CAS) and ClickOnce

Module 16: Windows Presentation Foundation

  • Overview of WPF (Windows Presentation Foundation)
  • Hosting WPF controls in Windows Forms

Module 17: Review

  • Course review; Further resource

Follow on course

For enterprise developers, where the windows application is the 'front-end' of a complex architecture, the following course is recommended:

Performance Plus

5 Days

Duration

This course is authored by QA

Delivery Method

Delivery method

Classroom

Face-to-face learning in the comfort of our quality nationwide centres, with free refreshments and Wi-Fi.

Find dates and prices

Online booking is currently not available for this course, to find out more please call us on 0345 074 7998 or email us at info@qa.com to discuss how we can help.

Trusted, awarded and accredited

Fully accredited to ensure we provide the highest possible standards in learning

All third party trademark rights acknowledged.