2010-08-10 99 views

回答

3

使用两个VS2010实例。用您的主应用程序probject或测试工具应用程序项目加载一个,并使用您的控件项目加载另一个项目。在构建控件项目时,参考其他项目中的调试dll。从持有控件项目的VS2010实例附加到包含测试应用程序的VS2010实例。

根据需要放置折点。

现在驱动VS2010的测试应用程序实例,就像构建应用程序中的控件时一样,当控件加载时,代码将会执行,您可以开始执行代码。使用Blend中的控件时,您可以做类似的事情,只需连接到Blend实例。

+0

对于Blend实例上的信息+1(因为只发生在Blend上而不是VS中发生的错误)。 – 2013-01-03 07:49:09

2

在VS中,首先进入Debug-> Exceptions并选中CLR Exceptions的“Thrown”框。这将进入Blend/VS应用程序捕获的异常的调试器。然后执行Debug-> Attach To Process ...并查找已打开解决方案的Blend或devenv的实例。调试器启动后,您可以在设计器中打开XAML文件并进行调试。

+0

我已经尝试了这几种不同的方式 - 调试器从不“捕捉”异常。 – chadbr 2010-08-11 03:44:20

+0

同意,我认为这应该工作得很好,但事实并非如此。 – Jeff 2012-11-01 15:01:32

0

我发现这两个答案有用。只需添加我的2美分 - 在用于附加到设计器的VS副本中,我需要在“附加到进程”对话框中手动选择代码类型(在我的示例中为Managed,v4.0)以获得所需的结果。出于某种原因,devenv的默认值是Script,T-SQL。看看OP的日期和原始答案,可能是VS的更新导致了这种变化......只是猜测。

Select Code Type - manually set to Managed, v4.0

1

这里是另一个两分钱。只要确保选项 - >调试 - >常规 - >启用只是我的代码在您用于附加到设计器进程的实例中未选中。