调试 WPF:工具和技术

Posted

技术标签:

【中文标题】调试 WPF:工具和技术【英文标题】:Debugging WPF : Tools and Techniques 【发布时间】:2010-02-11 14:09:21 【问题描述】:

好的,所以我只是浪费了一个小时来寻找为什么我的无外观 WPF 控件没有显示在窗口中。

最后,我发现我忘记在主题目录下的 generic.xaml 文件中添加 ResourceDictionary 条目。风格和课程本身都还可以。

有没有办法追踪 WPF 内部发生的事情?如何跟踪样式是如何加载(或未加载)的。我想这一定是一大堆东西要看,但总比必须检查每个文件是否有错别字或我忘记的东西更好。

(我已经搜索过其他问题,但主要针对特定​​案例)

谢谢!

【问题讨论】:

【参考方案1】:

这可能对您的特定问题没有帮助,但Snoop 是调试 WPF 应用程序的好工具。

这也与您提到的问题有点无关,但我还发现您在使用 WPF 时需要注意内存使用情况(尤其是在您开始时),因为它很容易保留对对象的意外引用。 Red Gate's memory profiler 是一个很棒的工具。

【讨论】:

这里有一个更好的 Snoop 版本。修复属性编辑,添加 64 位支持和其他改进...cplotts.com/2009/12/08/snoop-now-with-64-bit-support-and-more【参考方案2】:

嗯,没有什么比在 Visual Studio 中调试 c# 代码更复杂的了,但是有几种方法;

http://rrelyea.spaces.live.com/Blog/cns!167AD7A5AB58D5FE!1625.entry http://geekswithblogs.net/lbugnion/archive/2007/03/14/108728.aspx http://blogs.devsource.com/devlife/content/silverlight/debugging_dynamic_xaml_in_silverlight_1.html

【讨论】:

以上是关于调试 WPF:工具和技术的主要内容,如果未能解决你的问题,请参考以下文章

WPF 框架开发 调试和开发 XAML 构建过程的 PresentationBuildTasks 方法

WPF 卡顿调试经验

WPF 卡顿调试经验

C#串口调试工具 (基于WPF史无前例/MVVM结构完整示例版)

WPF性能调试系列 – 应用程序时间线

Linux on Power 上的调试工具和技术