gpt4 book ai didi

vb.net - 我可以在整个表单上设置断点条件吗?

转载 作者:行者123 更新时间:2023-12-01 00:56:29 26 4
gpt4 key购买 nike

运行程序时,我需要在每次禁用某个按钮时查看,并在那时逐步执行代码。

如果我设置一个带条件的断点
(例如:仅在 button1.enabled=false 时点击)它只会在该特定位置点击。

是否可以在整个程序上设置断点,以便我可以看到条件何时跨多个表单和位置发生变化?

最佳答案

您不能设置一个断点并使其应用于文件的每一行,但您可以在 Enabled 的 setter 上设置断点,然后将其过滤到特定的过滤条件。那会给你想要的结果。 (注意,您可能需要关闭“仅我的代码”,请参阅 this question for more info )

使用“New Breakpoint At Function”设置断点as described here ,虽然在 Visual Studio 2013 中,我似乎需要使用稍微不同的表示法:

enter image description here

然后将断点设置为函数:

 System.Windows.Forms.Control.Enabled

在 C# 或 VB.NET 中:
 System.Windows.Forms.Control.set_Enabled(bool)

(您似乎需要使用实际定义该属性的类,在 Button 类' Enabled 属性的情况下,是 Control 继承的 Button 类。

忽略有关无法找到该函数的警告(它以某种方式为属性执行此操作),或取消选中 Intellisense 查找。

现在在 Breakpoints 列表中查找断点并自定义条件,使其在右侧按钮上中断

enter image description here

使用 Name属性(或任何其他使断点唯一的过滤器)在您需要时触发:

enter image description here

当它中断时,它会在 Control 源中中断(如果您启用了 Framework Source Stepping),这可能会令人困惑。使用 Stack Trace 窗口可以准确地找到调用方法的位置。

enter image description here

设置断点的另一种方法是通过 Stacktrace 窗口。在具有您感兴趣的属性的任何行上设置断点。启动调试器并让它在该行中断,现在使用“Step into Specific”进入您想要中断的属性。

enter image description here

使用“堆栈”窗口为您生成断点:

enter image description here

关于vb.net - 我可以在整个表单上设置断点条件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27487719/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com