c# - 有什么方法可以使用 UI 进行自上而下的调试,以单步调试并定位 Visual Studio C# windows 窗体中的特定代码?
问题描述
我有一段时间没有维护的第三方UI框架(开源),所以我下载了源代码并添加了对项目的引用。在更复杂的布局中使用相互嵌套的面板和用户控件时,会出现一些奇怪的 UI 行为,并且似乎会绘制一些额外的按钮/滚动条。
由于我不知道代码的来源,我现在可以访问项目的源代码,我想知道以下是否可能:
- 启动调试器
- 通过将鼠标悬停在其中一个 UI 控件上/单击它/任何其他方式与它进行交互
- 以某种方式启动调试流程并逐步执行代码?<-- 自上而下,而不是像往常那样编写自己的代码时自下而上
我以前从未这样做过,也不知道这是否可能,或者是否有人有解决 UI 代码问题的提示和技巧,以尝试以这种方式查找 UI 缺陷。我想与奇怪的 UI 组件进行交互,单击它们,并尝试识别与生成它相关的项目代码,看看我是否可以修复它。否则,这就像大海捞针,在代码中搜索,在看起来与它无关的东西中单步执行......
任何从 UI 端到代码的洞察力或调试技术都会受到赞赏。
注意:在设计器代码中没有问题,只有在运行时应用程序运行时才会发生这种情况
谢谢,
解决方案
您可以使用我的Runtime Flow工具识别与 UI 相关联的项目代码。
推荐阅读
- javascript - cors 启用 axios 获取请求失败
- r - 如何根据小标题中的标准过滤数据框?
- .net-core - 如何停止从一页到另一页的剃刀部分持久状态消息
- html - 具有跨度的响应式 CSS 网格
- python - 将数据从一个数据帧复制到另一个数据帧并根据值替换数据
- python - AWS:无法导入模块“处理程序”:没有名为“numpy”的模块
- jquery - 限制 jQuery 仅附加到一个元素
- java - 奇怪的错误:未创建 Bean,“无法配置端点”
- c++ - 在文本文件中查找字谜
- c++ - Arduino Nano BLE 33 Sense 和 DS18B20 不工作