调试 Visual Studio 或 Blend Silverlight/WPF 设计器加载错误?

发布于 2024-09-13 22:43:53 字数 98 浏览 4 评论 0原文

有没有办法调试 Visual Studio 或 Blend,以便我可以找出代码中 XAML 设计器加载错误的来源?

堆栈跟踪通常是无用的。

谢谢...

Is there a way to debug Visual Studio or Blend so I can figure out where XAML designer load errors come from in my code?

The stack traces are often useless.

Thanks...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

水晶透心 2024-09-20 22:43:53

使用两个VS2010实例。使用主应用程序项目或测试工具应用程序项目加载一个,并使用控件项目加载另一个。构建控件项目后,将引用其他项目中的调试 dll。从包含控件项目的 VS2010 实例进行调试附加到包含测试应用程序的 VS2010 实例。

根据需要放置断点。

现在,像将控件构建到应用程序中一样驱动 VS2010 的测试应用程序实例,当加载控件时,它们的代码将执行,您可以开始单步执行代码。在 Blend 中使用控件时,您可以执行类似的操作,只需附加到 Blend 实例即可。

Use two VS2010 instances. Load one with your main app probject or a test harness application project and load the other with your controls project. Having built the controls project reference the debug dlls in your other project. Debugging from the VS2010 instance holding the controls project attach to the VS2010 instance holding the test application.

Place your break points as you like.

Now drive the test application instance of VS2010 as you would when building yout controls into an application, when your controls are load their code will execute and you can start stepping the code. You can do a similar thing when working with your controls in Blend just attach to the Blend instance.

风筝有风,海豚有海 2024-09-20 22:43:53

在 VS 中,首先转到“调试”->“异常”,然后选中“CLR 异常”的“抛出”复选框。这将闯入调试器以获取 Blend/VS 应用程序捕获的异常。然后执行“调试”->“附加到进程...”并找到打开您的解决方案的 Blend 或 devenv 实例。调试器启动后,您可以在设计器中打开 XAML 文件并对其进行调试。

In VS, first go to Debug->Exceptions and check the box for "Thrown" for CLR Exceptions. This will break into the debugger for exceptions caught by the Blend/VS app. Then do Debug->Attach To Process... and find the instance of Blend or devenv that has your solution open. Once the debugger starts up you can open the XAML file in the designer and debug against it.

没︽人懂的悲伤 2024-09-20 22:43:53

这里还有另外两分钱。只需确保在您用于附加到设计器流程的实例中取消选中“选项”->“调试”->“常规”->“仅启用我的代码”即可。

Here are another two cents. Just make sure that the Options->Debugging->General->Enable Just My Code is unchecked in the instance you are using to attach to the designer's process.

横笛休吹塞上声 2024-09-20 22:43:53

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

选择代码类型 - 手动设置为托管,v4.0

I found both answers useful. Just adding my 2 cents - In the VS copy that you're using to attach to the designer, I needed to select the code type manually (Managed, v4.0 in my example) in the Attach To Process dialog to get the desired result. For some reason the default for devenv was Script, T-SQL. Looking at the date of the OP and original answers, it may be that an update to VS caused this change... just speculating.

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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文