Сторнирование перехода в визуальное состояние wpf - PullRequest
1 голос
/ 09 февраля 2012

У меня есть пользовательский элемент управления WPF с двумя визуальными состояниями - Включено и Отключено. Отключенное состояние имеет простую анимацию перехода, которая отключает элемент управления, а затем исчезает после небольшой задержки. Затем у меня есть обратная анимация, где она исчезает в элементе управления и повторно включает ее (без задержки) при переходе в состояние «Включено».

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

Какой правильный способ исправить это? Мне нужно установить начальную точку раскадровки перехода «Включено» на основе текущего времени в раскадровке перехода «Отключено» (минус начальная задержка).

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

Возможно ли это?

Спасибо!

1 Ответ

0 голосов
/ 22 марта 2012

для включения и выключения анимации, правильно ли я догадываюсь, что у вас определены значения От и До? это объясняет поведение, которое вы описываете.

если вы пропустите значение From, указав только значение To, указанное свойство будет анимироваться из любого значения, которое оно имеет в данный момент (например, наполовину блеклого), в любое указанное вами значение. это вместо присвоения значения указанному значению From и последующей анимации до значения To.

...