У сториборда есть методы Begin(); и Stop();
| Код | storyBoard1.Begin(); storyBoard1.Stop();
|
Если у вас есть какой-то динамически созданный контролл, и нужно через его объект вызвать сториборд, то это делаеться через ресурсы
| Код | StoryBoard _rInProgress = (Storyboard)image2.TryFindResource("storyBoard1"); _rInProgress.Begin(); _rInProgress.Stop();
|
Еще заметил такую фишку (может я конечно тогда недоразобрался, ибо спешил) что TryFindResource() возвращает копию или копию ссылки этого сториборда, и потому если у вас допустим
| Код | StoryBoard _rInProgress = (Storyboard)image2.TryFindResource("storyBoard1"); _rInProgress.Begin(); //картинка начала вращаться
StoryBoard _rInProgress = (Storyboard)image2.TryFindResource("storyBoard1"); _rInProgress.Stop(); //картинка не остановиться, потому что вы по факту ост
|
анавливаете совсем другую копию сториборда.
С одной стороны странно, с другой я хз. Т.к. TryFindResource() используется не только для поиска сторибордов а для всех ресурсов в целом, то такой подход может быть оправдан. Короче что бы его остановить потом, нужно его просто запомнить и другой раз уже TryFindResource для этого сториборда этого елемента не делать.
|