Ответ 1
В этот эпизод подкаста Hanselminutes, гость Лоран Бугнион (создатель MVVM Light) описывает, что есть хит производительности, связанный с использованием конвертеров, Он указывает, что он практически всегда ничтожен в настольных приложениях, но в приложениях WP7 рекомендуется, чтобы режимы просмотра отображали объекты, подобные кистям, напрямую, а не полагались в основном на конвертеры, особенно при работе с виртуализацией списка, и в этом случае прокрутка приведет к множеству invocations преобразования.
Возможно, что в вашем сценарии происходит аналогичная ситуация, просто заданный объем триггеров (или конверсий, если вы сделали этот переключатель).
В качестве доказательства концепции вы можете рассмотреть возможность переноса вашей модели представления в "WPM Viewmodel", которая предоставляет цвета и другие значения, специфичные для WPF, а не какое-либо значение, из которого цвета могут быть определены средой выполнения вызывающие триггеры и IValueConverters
. Затем вы сможете напрямую связать это с ним и не использовать ни триггеры, ни конвертеры. Мне было бы интересно услышать результаты.