编程语言
首页 > 编程语言> > C#断点改变行为

C#断点改变行为

作者:互联网

我处于一种奇怪的情况,我已经意识到如果我的代码上的设置断点然后它将被触发,否则该方法永远不会被调用.我的问题是;如何在改变C#代码与WinForms应用程序交互的方式上设置断点?

罪魁祸首似乎是ScrollableControl.ScrollControlIntoView Method.我已将Flowlayoutpanel的autoScroll属性设置为true,并且垂直滚动条可见,但它仍然没有区别.

解决方法:

调用堆栈会使它显而易见.不得不猜测:是的,调试器肯定会影响GUI代码.特别是通过设置断点.这是焦点从窗口更改为Visual Studio主窗口的副作用.然后回来.这会影响订阅窗口的De / Activated事件,Got / LostFocus事件以及任何涉及绘制的代码(如果VS与窗口重叠).

在调试依赖于这些事件的GUI代码时,这肯定会受到阻碍.在极端情况下,您可能需要在另一台计算机上设置远程调试器,以便在调试时不会发生此焦点切换.

ScrollControlIntoView()也是关联的.这通常在控件获得焦点时自动发生.这大致回答了你的问题,很难看出它如何有效地解决你的问题.请务必查看调用堆栈以获得更多信息.

标签:c,winforms,flowlayoutpanel
来源: https://codeday.me/bug/20190620/1245798.html