如何调试silverlight性能问题,数据网格

时间:2011-05-06 11:19:42

标签: silverlight silverlight-toolkit

我有一个Silverlight导航应用程序,出于某种原因,在显示数据网格时,它会消耗整个处理器......

例如:Image Link Check image here

我不知道为什么会这样做,它不应该刷新网格,如果我在PropertyChanged上放置断点,没有属性改变...

更多信息

我已经跟踪这个向下显示一个显示滚动条(T​​reeView,DataGrid)的控件,当显示时,处理器试图达到允许的最大帧速率(60)并堵塞CPU ...我可以转这一点下来了,但重点是它不应该一直试图达到这个速度,它通常只在某些东西发生变化时刷新UI,但现在它在滚动条出现时就这样做了!这是怎么回事?

有没有人对如何进行调试有任何想法?

2 个答案:

答案 0 :(得分:0)

您是否尝试过只需按下Visual Studion中的“暂停”按钮,然后检查每个线程上的调用堆栈。如果你的代码正在做什么,你会发现你的一些代码至少在其中一个线程上运行。然后上升堆栈应该让你进入一个不应该发生的可怕循环或者由于其他原因而继续发射的事件。

答案 1 :(得分:0)

如果您使用Silverlight的Metro示例主题,则存在一个错误,如果您使用BusyIndi​​cator并在主框架上留下阴影,CPU使用率将达到100%。