| Предыдущий | Следующий |
| UI_E_LOOPS_OVERLAP | UI_E_TRANSITION_NOT_IN_STORYBOARD |
UI_E_TRANSITION_ALREADY_USED
Что означает UI_E_TRANSITION_ALREADY_USED
UI_E_TRANSITION_ALREADY_USED означает, что один и тот же объект перехода Windows Animation уже был добавлен в storyboard и повторно используется там, где требуется новый экземпляр. Это ограничение жизненного цикла объекта, а не проблема счётчика ссылок COM.
Что проверить
- Зафиксируйте место создания transition и все вызовы, которыми он добавлялся в storyboard.
- Проверьте кэширование: объект перехода нельзя безусловно хранить как «шаблон» и затем присоединять к нескольким storyboard.
- Отличайте этот код от
UI_E_DIFFERENT_OWNER: там объект принадлежит другому animation manager, здесь он уже использован.
Как исправить
Повторно используйте параметры перехода, а не сам COM-объект: создавайте отдельный transition для каждого места в storyboard. Дополнительный AddRef не снимает ограничение членства и лишь увеличивает время жизни того же экземпляра.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
