diff --git a/Microsoft.Toolkit.Uwp.UI.Animations/Extensions/StoryboardAnimations.cs b/Microsoft.Toolkit.Uwp.UI.Animations/Extensions/StoryboardAnimations.cs index 0a67e640ead..7b60d07b266 100644 --- a/Microsoft.Toolkit.Uwp.UI.Animations/Extensions/StoryboardAnimations.cs +++ b/Microsoft.Toolkit.Uwp.UI.Animations/Extensions/StoryboardAnimations.cs @@ -23,7 +23,14 @@ public static Task BeginAsync(this Storyboard storyboard) { TaskCompletionSource taskCompletionSource = new TaskCompletionSource(); - storyboard.Completed += (_, _) => taskCompletionSource.SetResult(null); + void OnCompleted(object sender, object e) + { + ((Storyboard)sender).Completed -= OnCompleted; + + taskCompletionSource.SetResult(null); + } + + storyboard.Completed += OnCompleted; storyboard.Begin();