我创建了一个包含标签的WPF用户控件。该标签的前景设置基于检查若干条件的代码而更改。在设计时,我的控件中的标签显示错误的颜色,但我无法找出如何在设计时调试我的用户控件,以便它可以捕获断点(从而找出逻辑有误的地方)。控件的颜色在运行时是正确的,只是在设计时显示不正确。
我创建了一个包含标签的WPF用户控件。该标签的前景设置基于检查若干条件的代码而更改。在设计时,我的控件中的标签显示错误的颜色,但我无法找出如何在设计时调试我的用户控件,以便它可以捕获断点(从而找出逻辑有误的地方)。控件的颜色在运行时是正确的,只是在设计时显示不正确。
以下是在设计时调试控件的步骤:
请注意,这种技术不仅限于控件,您还可以将其用于调试VS扩展或任何在Visual Studio内执行的内容。
为了调试Controls程序集,我使用以下解决方案。
使用项目菜单打开项目属性
显示Debug
(法语中为Déboguer)
将Start extern program
设置为devenv.exe
(红色矩形)
在我的电脑上是
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\devenv.exe
填写命令行参数,使其等于解决方案文件(蓝色矩形)
指定工作目录。由于目录未在参数中指定,因此工作目录等同于包含.sln
文件的目录(绿色矩形)
在我的电脑上是
D:\@Projets\VisualBasic.Net\Tramex.Controls.Net\Test
现在,第一次开始调试时,会启动一个新的Visual Studio。这个阶段可能需要几分钟(在我的电脑上需要5分钟)。但这只是我第一次启动调试过程时。
然后,我可以在第二个Visual Studio应用程序中使用设计器中的控件,并查看在第一个窗口中定义断点时发生了什么。
这对WinForms控件完美地起作用。