Анимация декларируемой панели данных в Silverlight декларативно (без кода) - PullRequest
1 голос
/ 01 июля 2010

Как можно анимировать ProgressBar, свойство Value которого связано с данными?

<ProgressBar Height="25" Margin="5" Maximum="100" Value="{Binding CurrentProgress}">

Мой источник данных, вероятно, будет "переходить" со значения на значение, обычно из пользовательского ввода;например - пользователь выполняет действие, а индикатор выполнения прыгает на 20 баллов.Я хотел бы иметь возможность взять новый номер для ProgressBar.Value и сгладить его в анимации.Допустим, новое значение равно 50, а старое значение равно 20. Я хотел бы, чтобы какая-то разметка XAML диктовала, что пользовательский интерфейс плавно перемещается от 20 до 50.

Я хочу сделать это декларативно без кода-позади.Я вполне уверен, что это возможно, но я не могу вписаться воедино.Я изучил раскадровки, но не знаю, как вызвать раскадровку при изменении данных.Я также изучил TransitioningContentControl, но не уверен, как связать переход с элементом управления ProgressBar.

1 Ответ

1 голос
/ 02 ноября 2010

Попробуйте добавить анимацию в шаблоне событий ProgressBars

<EventTrigger RoutedEvent="RangeBase.ValueChanged">
 <BeginStoryboard Storyboard="{StaticResource OnValueChanged1}"/>
</EventTrigger>
...