У меня есть настраиваемый элемент управления WPF с двумя визуальными состояниями: включено и отключено. Отключенное состояние имеет простую анимацию перехода, которая отключает элемент управления, а затем исчезает после небольшой задержки. Затем у меня есть обратная анимация, где она исчезает в элементе управления и снова включает ее (без задержки) при переходе в состояние «Включено».
Проблема, с которой я сталкиваюсь, заключается в том, что если я изменю состояние с «Отключено», а затем снова вернусь к включенному до того, как оно начнет исчезать, тогда мне все равно придется ждать анимации постепенного появления, прежде чем он снова включит элемент управления, где на самом деле, он может просто сразу включить управление и избежать постепенного появления.
Как правильно это исправить? Мне как бы нужно установить начальную точку раскадровки перехода «Включено» на основе текущего времени в раскадровке перехода «Отключено» (минус начальная задержка).
Другой способ, я думаю, состоит в том, чтобы иметь два состояния: одно с надписью «Отключено» и одно с надписью «исчезло». После завершения анимации отключенного состояния, если бы можно было изменить визуальные состояния из раскадровки, я мог бы войти в состояние «Затухание» после завершения отключенной раскадровки. Затем я могу определить разные переходы от Disabled к Enabled и Faded к Enabled.
Это возможно?
Спасибо!