Walkthrough: Debugging a Windows Form
For the latest documentation on Visual Studio 2017, see Visual Studio 2017 Documentation.
A Windows Form is one of the most common managed applications. A Windows Form creates a standard Windows application. You can complete this walkthrough using Visual Basic, C#, or C++.
First, you must close any open solutions.
- If you already have an open solution open, close it. (On the File menu, select Close Solution.)
Next, you will create a new Windows Form.
On the File menu, choose New and click Project.
The New Project dialog box appears.
In the Project Types pane, open the Visual Basic, Visual C#, or Visual C++ node, then
For Visual Basic or Visual C#, select the Windows node, then select Windows Form Application in the Templates pane.
For Visual C++, select the CLR node, then select Windows Form Application in the Templates pane..
In the Templates pane, select Windows Application.
In the Name box, give the project a unique name (for example, Walkthrough_SimpleDebug).
Visual Studio creates a new project and displays a new form in the Windows Forms designer. For more information, see Windows Forms Designer.
On the View menu, select Toolbox.
The Toolbox opens. For more information, see Toolbox.
In the Toolbox, click on the Button control and drag the control to the Form design surface. Drop the button on the form.
In the Toolbox, click on the TextBox control and drag the control to the Form design surface. Drop the TextBox on the form.
On the form design surface, double-click the button.
This takes you to the code page. The cursor should be in
In the function
button1_Click., add the following code:
On the Build menu, select Build Solution.
The project should build with no errors.
Now, you are ready to begin debugging.
In the source window, click the left margin on the same line as the text you added:
A red dot appears and the text on the line is highlighted in red. The red dot represents a breakpoint. For more information, see Breakpoints. When you run the application under the debugger, the debugger will break execution at that location when the code is hit. You can then view the state of your application and debug it.
You can also right-click any line of code, point to Breakpoint, and then click Insert Breakpoint to add a breakpoint on that line.
ON the Debug menu, choose Start.
The Windows Form starts running.
On the Windows Form, click the button you added.
In Visual Studio, this takes you to the line where you set your breakpoint on the code page. This line should be highlighted in yellow. You can now view the variables in your application and control its execution. Your application has now stopped executing, waiting for an action from you.
On the Debug menu, choose Windows, then Watch, and click Watch1.
In the Watch1 window, click on a blank row. In the Name column, type
textBox1.Text(if you are using Visual Basic, Visual C#, or J#) or
textBox1->Text(if you are using C++), then press ENTER.
The Watch1 window shows the value of this variable in quotation marks as:
On the Debug menu, choose Step Into.
The value of textBox1.Text changes in the Watch1window to:
Button was clicked!
On the Debug menu, choose Continue to resume debugging your program.
On the Windows Form, click the button again.
Visual Studio breaks execution again.
Click on the red dot that represents the breakpoint.
This removes the breakpoint from your code.
On the Debug menu, choose Stop Debugging.
In Visual Studio, you can attach the debugger to a running process. If you are using an Express Edition, this feature is not supported.
In the project you created above, click in the left margin to once again set a breakpoint at the line you added:
' Visual Basic textBox1.Text = "Button was clicked!" // C# textBox1.Text = "Button was clicked!" // C++ textBox1->Text = "Button was clicked!";
On the Debug menu, select Start Without Debugging.
The Windows Form starts running under Windows, just as if you had double-clicked its executable. The debugger is not attached.
On the Debug menu, select Attach to Process. (This command is also available on the Tools menu.)
The Attach to Process dialog box appears.
In the Available Processes pane, find the process name (Walkthrough_SimpleDebug.exe) in the Process column and click it.
Click the Attach button.
In your Windows Form, click the one and only button.
The debugger breaks execution of the Windows Form at the breakpoint.