private async void StoryboardToolbarIconDoneStart_Completed(object sender, object e) { try { await RunOnUIThreadAsync(CoreDispatcherPriority.High, () => StoryboardToolbarIconDoneFinish.Begin()); } catch (Exception) { } }
private async void StackPanelToolbarInitial_Loaded(object sender, RoutedEventArgs e) { // fix success animation may have gotten stuck when playing while this was hidden await RunOnUIThreadAsync(CoreDispatcherPriority.Low, () => { try { StoryboardToolbarIconDoneFinish.Begin(); } catch (Exception) { } }); }
private async void PlayStoryboardToolbarIconDone(ToolbarFunction function) { switch (function) { case ToolbarFunction.Rotate: IconStoryboardToolbarIcon = nameof(FontIconRotate); IconStoryboardToolbarIconDone = nameof(FontIconRotateDone); break; case ToolbarFunction.Delete: IconStoryboardToolbarIcon = nameof(FontIconDelete); IconStoryboardToolbarIconDone = nameof(FontIconDeleteDone); break; case ToolbarFunction.Copy: IconStoryboardToolbarIcon = nameof(FontIconCopy); IconStoryboardToolbarIconDone = nameof(FontIconCopyDone); break; case ToolbarFunction.OpenWith: case ToolbarFunction.Share: default: return; } await RunOnUIThreadAsync(CoreDispatcherPriority.High, () => { StoryboardToolbarIconDoneStart.SkipToFill(); StoryboardToolbarIconDoneStart.Stop(); StoryboardToolbarIconDoneFinish.SkipToFill(); StoryboardToolbarIconDoneFinish.Stop(); int index = 0; foreach (var animation in StoryboardToolbarIconDoneStart.Children) { if (index <= 2) { Storyboard.SetTargetName(animation, IconStoryboardToolbarIcon); } else { Storyboard.SetTargetName(animation, IconStoryboardToolbarIconDone); } index++; } index = 0; foreach (var animation in StoryboardToolbarIconDoneFinish.Children) { if (index <= 2) { Storyboard.SetTargetName(animation, IconStoryboardToolbarIcon); } else { Storyboard.SetTargetName(animation, IconStoryboardToolbarIconDone); } index++; } StoryboardToolbarIconDoneStart.Begin(); }); }