2010-03-12 3 views
3

У меня есть раскадровка вроде следующегоWPF Анимация Продолжительность

Длительность = "0: 0: 1" Завершена = "DeviceExplorer_Completed">

анимация по какой-то причине, как представляется, не будет работать линейно. Если я изменю продолжительность на что-то вроде Duration = "0: 0: 0.8"

и назначить стритбард событию MouseEnter кнопки, анимация движется, но по какой-то причине не завершается, я перемещаю мышь кнопку несколько раз, прежде чем она завершается ...

Любые идеи, почему?

+0

У меня были проблемы с анимацией, длительностью менее секунды. Если я изменяю непрозрачность элемента управления до нуля с длительностью 1 секунду, элемент управления исчезает, но с длительностью 0,5 секунды он исчезает только наполовину (т.е. он исчезает с той же скоростью, как если бы продолжительность составляла 1 секунду, но только анимирует полсекунды). Это ошибка? Кто-нибудь нашел решение? – AndrewS

ответ

1

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

Обнаружив обходной путь, у меня не было времени полностью отладить проблему, но я подозреваю, что это связано с порядком, в котором я создаю раскадровку и анимацию. В моей ситуации раскадровка очень динамична, поэтому корректировка продолжительности на нескольких дополнительных объектах является наименьшей из моих проблем.

8

Вы должны установить продолжительность анимации, а не раскадровки. Анимация по умолчанию будет длиться 1 секунду, если она не установлена, и раскадровка заканчивается меньше времени, чем при анимации, которая сокращается на какой-то промежуток времени. Когда вы добавляете продолжительность анимации, она должна работать нормально.

Смежные вопросы