Как отладить проблемы с производительностью Silverlight, сетка данных - PullRequest
1 голос
/ 06 мая 2011

У меня есть навигационное приложение Silverlight, которое по какой-то причине при отображении сетки данных использует весь процессор ...

Например: Ссылка на изображение Check image here

Я не знаю, почему он это делает, это не должно обновлять сетку, если я поставлю точку останова на PropertyChanged, свойства не изменятся ...

Подробнее

Я отследил это до показа элемента управления, который показывает полосу прокрутки (TreeView, DataGrid), когда это показано, процессор пытается достичь максимально допустимой частоты кадров (60) и забивает процессор ... Я могу включить это вниз, но дело в том, что он не должен постоянно пытаться достичь этой скорости, он обычно обновляет интерфейс только когда что-то меняется, но теперь он делает это, когда представлена ​​полоса прокрутки !! Что здесь происходит?

У кого-нибудь есть идеи, как отладить это?

Ответы [ 2 ]

0 голосов
/ 03 апреля 2012

Если вы используете пример темы Metro для Silverlight, возникает ошибка, при которой, если вы используете BusyIndicator вместе с падающей тенью на основном кадре, загрузка ЦП достигает 100%.

0 голосов
/ 06 мая 2011

Вы пытались просто нажать кнопку «Пауза» в Visual Studion, а затем проверить стек вызовов в каждом потоке. Если ваш код что-то делает, вы обнаружите, что часть вашего кода работает по крайней мере в одном из потоков. Поднятие стека должно затем привести вас к какой-то ужасной петле, которая не должна происходить, или к событию, которое по какой-то другой причине продолжает срабатывать.

...