Breakpoints dialog
All breakpoints defined in your solution appear in the left-hand part of the dialog. They are grouped by their type — line breakpoints, method breakpoints, and exception breakpoints.
In the right-hand part of the dialog, you can configure the options of the selected breakpoint as well as preview the code context of the selected line breakpoint. Note that this dialog is not modal, which means that you can interact with other part of the IDE while having this dialog open.
Breakpoints list toolbar
Item | Tooltip and shortcut | Description |
---|---|---|
Add Alt+Insert | Use this button to add new exception breakpoints and method breakpoints. Note that line breakpoints can be only set from the editor. | |
Remove Alt+Delete | Click this button to remove selected breakpoints. | |
Group by File | Use this button to group line breakpoints by their containing files. | |
Group by Namespace | Use this button to group CLR Exception breakpoints by their namespaces. |
Breakpoint options
The controls of this part of the Breakpoints dialog depend on the type of the selected breakpoint.
Item | Description |
---|---|
Enabled | Select this checkbox to enable the selected breakpoint. If the breakpoint is disabled, it won't be hit during debugging. You can also use checkboxes in the left-hand-side view to enable/disable breakpoints. |
Suspend execution | Select this checkbox if you want the debugger to suspend the program when the breakpoint is hit. You can disable this option if you want the breakpoint only to log some data or calculate an expression at some point without suspending the program. |
Condition | Select this checkbox to make the selected breakpoint conditional, and specify a condition in the adjacent text field. Press Shift+Enter to open the multiline editor. |
Log | Select these checkboxes if you want to log the breakpoint hit in the debugger output. You can choose either to log the fact the breakpoint was hit or log the full stack trace of the program when the breakpoint was hit, or both. You would normally want to clear the Suspend checkbox when you use the breakpoint for logging. |
Hit count | Specify the number of hits and how to count them. The debugger will only stop at the breakpoint after the specified number of hits. This is helpful for debugging loops or methods called several times. When the execution process comes to a breakpoint, where Hit count is set, the debugger reduces the count value by 1 and compares it to zero. If the comparison result is The Hit count condition only satisfies once per debugging session. In other words, if you have a loop inside a method and the Hit count condition has been reached once, the breakpoint will not be hit the next time the said method is called. |
Evaluate and log | Select this checkbox if you wish to evaluate a certain expression at this breakpoint and to log the result to the debugger output. Use the adjacent text field to specify the expression. Press Shift+Enter to open the multiline editor. |
Remove once hit | Select this checkbox, if you want the breakpoint to be deleted after hitting it. |
Disable until breakpoint is hit | From the list, select the breakpoint you want the current breakpoint to depend on. Besides that, you can also choose whether to disable the current breakpoint again after it is enabled and hit or to leave it enabled. |
Suspend only on specific thread | This option appears when a debugging session is in progress and allows you to make a breakpoint thread-specific. |
Item | Description |
---|---|
Enabled | Select this checkbox to enable the selected breakpoint. If the breakpoint is disabled, it won't be hit during debugging. You can also use checkboxes in the left-hand-side view to enable/disable breakpoints. |
Suspend execution | Select this checkbox if you want the debugger to suspend the program when the breakpoint is hit. You can disable this option if you want the breakpoint only to log some data or calculate an expression at some point without suspending the program. |
Log | Select these checkboxes if you want to log the breakpoint hit in the debugger output. You can choose either to log the fact the breakpoint was hit or log the full stack trace of the program when the breakpoint was hit, or both. You would normally want to clear the Suspend checkbox when you use the breakpoint for logging. |
Disable until breakpoint is hit | From the list, select the breakpoint you want the current breakpoint to depend on. Besides that, you can also choose whether to disable the current breakpoint again after it is enabled and hit or to leave it enabled. |
Only break on exceptions thrown from user code | Use this option to ignore matching exceptions that arise from library code. |
Item | Description |
---|---|
Enabled | Select this checkbox to enable the selected breakpoint. If the breakpoint is disabled, it won't be hit during debugging. You can also use checkboxes in the left-hand-side view to enable/disable breakpoints. |
Suspend execution | Select this checkbox if you want the debugger to suspend the program when the breakpoint is hit. You can disable this option if you want the breakpoint only to log some data or calculate an expression at some point without suspending the program. |
Log | Select these checkboxes if you want to log the breakpoint hit in the debugger output. You can choose either to log the fact the breakpoint was hit or log the full stack trace of the program when the breakpoint was hit, or both. You would normally want to clear the Suspend checkbox when you use the breakpoint for logging. |
Disable until breakpoint is hit | From the list, select the breakpoint you want the current breakpoint to depend on. Besides that, you can also choose whether to disable the current breakpoint again after it is enabled and hit or to leave it enabled. |
Item | Description |
---|---|
Enabled | Select this checkbox to enable the selected breakpoint. If the breakpoint is disabled, it won't be hit during debugging. You can also use checkboxes in the left-hand-side view to enable/disable breakpoints. |
Suspend execution | Select this checkbox if you want the debugger to suspend the program when the breakpoint is hit. You can disable this option if you want the breakpoint only to log some data or calculate an expression at some point without suspending the program. |
Log | Select these checkboxes if you want to log the breakpoint hit in the debugger output. You can choose either to log the fact the breakpoint was hit or log the full stack trace of the program when the breakpoint was hit, or both. You would normally want to clear the Suspend checkbox when you use the breakpoint for logging. |
Disable until breakpoint is hit | From the list, select the breakpoint you want the current breakpoint to depend on. Besides that, you can also choose whether to disable the current breakpoint again after it is enabled and hit or to leave it enabled. |
When thrown | This option only applies to C++ code. Select this checkbox to process the exception when it is thrown. |
When caught | This option only applies to C++ code. Select this checkbox to process the exception when it is caught. |
Item | Description |
---|---|
Enabled | Select this checkbox to enable the selected breakpoint. If the breakpoint is disabled, it won't be hit during debugging. You can also use checkboxes in the left-hand-side view to enable/disable breakpoints. |
Suspend execution | Select this checkbox if you want the debugger to suspend the program when the breakpoint is hit. You can disable this option if you want the breakpoint only to log some data or calculate an expression at some point without suspending the program. |
Log | Select these checkboxes if you want to log the breakpoint hit in the debugger output. You can choose either to log the fact the breakpoint was hit or log the full stack trace of the program when the breakpoint was hit, or both. You would normally want to clear the Suspend checkbox when you use the breakpoint for logging. |
Disable until breakpoint is hit | From the list, select the breakpoint you want the current breakpoint to depend on. Besides that, you can also choose whether to disable the current breakpoint again after it is enabled and hit or to leave it enabled. |
Uncaught only | Select this checkbox to process only those exceptions that were not caught in the project code. |
Context menu commands
Item | Description |
---|---|
Move to group | Use this command to move the selected breakpoint into a new group, into one of the existing groups ([group name]), or out of a group (<no group>). |
Edit description | Choose this command to add a label to the breakpoint. |