2014-10-10 1 views
0

У меня есть проект Silverlight, где у меня есть Telerik RadTreeView с включенными флажками, которые используются для отображения и управления разрешениями для набора пользователей.Как динамически включать и отключать анимацию в Telerik RadTreeView под Silverlight?

Когда выбран новый пользователь, флажки меняют свое состояние, чтобы отобразить выбранного пользователя. Когда это произойдет, все treeview обновляется с новым набором разрешений, объединенных с данными разрешения для этого пользователя. TreeView записывает и повторно применяет расширенное состояние каждого узла, когда оно обновляется для каждого пользователя.

Проблема в том, что я хотел бы включить анимацию, но анимация воспроизводится, когда TreeView обновляется каждый раз. Я бы хотел, чтобы он воспроизводился только тогда, когда пользователь вручную расширяет и сворачивает узлы.

Я пытаюсь связать класс с telerik:AnimationManager.IsAnimationEnabled, который возвращает статическое свойство (в другом классе), которое я устанавливаю в false до каждого повторного набора ItemSource, и сразу после этого вернусь к истине, но анимация по-прежнему воспроизводится каждый раз, когда я выбираю нового пользователя. Класс, который я привязываю, вообще не попадает.

ответ

1

Обычно you'd do this in the XAML, как вы упомянули, но так как вы хотите изменить их на лету, я хотел бы сделать следующее:

AnimationManager.IsGlobalAnimationEnabled = false; 

и

AnimationManager.IsGlobalAnimationEnabled = true; 

Это должно дать вам результаты «Ищем.