“监视”窗口列出了您指定的在调试时进行监视的所有变量和表达式。缺省情况下,“监视”窗口将在每次启动调试会话时自动打开。可通过选择“窗口”>“调试”>“监视”来打开“监视”窗口。
如果在调试会话运行时打开“监视”窗口,则该窗口将在您结束调试会话时自动关闭。如果在未运行调试会话时打开该窗口,则该窗口将始终保持打开状态直至您将其关闭。
为每个监视提供的信息包括变量或表达式名称、类型和值。如果变量左侧有一个控件,则可以单击该控件来展开或折叠对象。如果对象类型显示为带下划线的蓝色文本,则单击该文本将跳转至源代码中的对象类型。通过单击“值”单元格,可以直接在“监视”窗口中编辑值。
如果在“监视”窗口中添加新的变量或表达式,则将立即计算并显示该变量或表达式的值。监视值是根据当前上下文而定的。在执行程序代码时,将更新“监视”窗口以显示针对该上下文的监视值。
有时,调试器将一个磅符号 (#) 和一个数字指定为变量值。此数字是给定实例的唯一标识符。通过使用此标识符,可以确定变量是指向同一实例还是指向不同的实例。无法对此值进行编辑。
下表描述了对象名称左侧显示的图标。
图标 | 描述 |
---|---|
![]() |
监视对象 |
![]() |
固定监视对象 |
![]() |
用于超类的容器 |
![]() |
用于对象的静态字段 |
![]() |
用于对象的非静态字段 |
“监视”窗口中的弹出式菜单包括以下各项。
菜单项 | 描述 |
---|---|
创建固定监视 | 允许您为对象创建固定监视。 |
新建监视 | 允许您创建新的监视。 |
删除 | 从“监视”窗口中删除选定的对象。 |
全部删除 | 从“监视”窗口中删除所有对象。 |
定制 | 打开一个对话框,您可以在其中修改监视表达式。 |
列表选项 | 允许您定制“监视”窗口的显示,包括添加和删除信息列、重新排序列和排序列。有关详细信息,请参见定制调试器窗口。 |
通过右键单击要监视的节点并选择“属性”,可以查看要监视的所有属性。
缺省情况下,在“监视”窗口中还会直接显示所有属性(toString() 属性除外)。