有没有办法调试Visual Studio或Blend所以我可以找出XAML设计器加载错误来自我的代码?
堆栈跟踪通常无用。
...谢谢
答案 0 :(得分:3)
使用两个VS2010实例。使用主应用程序probject或测试工具应用程序项目加载一个,并使用您的控件项目加载另一个。构建控件项目后,请参考其他项目中的调试dll。从包含控件项目的VS2010实例进行调试将附加到包含测试应用程序的VS2010实例。
根据需要放置断点。
现在驱动VS2010的测试应用程序实例,就像在将控件构建到应用程序时一样,当控件加载时,它们的代码将执行,您可以开始执行代码。在Blend中使用控件时,您可以执行类似的操作,只需附加到Blend实例。
答案 1 :(得分:2)
在VS中,首先转到Debug-> Exceptions并选中CLr Exceptions的“Thrown”框。这将打破Blend / VS应用程序捕获的异常的调试器。然后执行Debug-> Attach To Process ...并找到打开解决方案的Blend或devenv实例。调试器启动后,您可以在设计器中打开XAML文件并对其进行调试。
答案 2 :(得分:1)
这是另外两美分。只需确保在用于附加到设计人员流程的实例中取消选中Options-> Debugging-> General-> Enable Just My Code。
答案 3 :(得分:0)
我发现这两个答案都很有用。只需添加我的2美分 - 在您用于附加到设计器的VS副本中,我需要在Attach To Process对话框中手动选择代码类型(Managed,v4.0在我的示例中)以获得所需的结果。出于某种原因,devenv的默认值是Script,T-SQL。查看OP和原始答案的日期,可能是对VS的更新导致了这种变化......只是猜测。