Debugging Preparation: Windows Forms Applications

This topic applies to:


Visual Basic




Web Developer


Topic applies Topic applies Topic applies Topic applies Topic does not apply

Pro, Premium, and Ultimate

Topic applies

Topic applies

Topic applies

Topic applies

Topic does not apply

The Windows Forms project template creates a Windows Forms application. Debugging this type of application in Visual Studio is straightforward. For more information, see How to: Create a New Windows Forms Application Project.

When you create a Windows Forms project with the project template, Visual Studio automatically creates required settings for the Debug and Release configurations. If necessary, you can change these settings. These settings can be changed in the <project name> Property Pages dialog box (My Project in Visual Basic).

For more information, see Managed Debugging: Recommended Property Settings.

The following table displays one additional recommended property setting.

Configuration Properties in Debug tab

Property Name


Start Action

  • Set to Start project, most of the time. Set to Start external program if you want to start another executable when you start debugging (usually for debugging DLLs).

You can debug Windows Forms applications from inside Visual Studio, or by attaching to an already running application. For more information about attaching, see Attaching to Running Processes.

To debug a C#, F#, or Visual Basic Windows Forms application

  1. Open the project in Visual Studio.

  2. Create breakpoints as needed.

    Because Windows Forms applications are event-driven, your breakpoints will go into event handler code, or into methods called by event handler code. Typical events in which to place breakpoints include:

    1. Events associated with a control, such as Click, Enter, etc.

    2. Events associated with application startup and shutdown, such as Load, Activated, etc.

    3. Focus and Validation Events.

    For more information, see Creating Event Handlers in Windows Forms.

  3. On the Debug menu, click Start.

  4. Debug using the techniques discussed in Debugger Roadmap.

See Also


How to: Set Debug and Release Configurations


Project Settings for C# Debug Configurations

Project Settings for a Visual Basic Debug Configuration

Other Resources

Debugging Managed Code

Debugging Preparation: C#, F#, and Visual Basic Project Types

Attaching to Running Processes

Windows Forms