private void Viewmodel_PropertyChanged(object sender, PropertyChangedEventArgs e) { if (e.PropertyName == nameof(ViewModel.Card)) { if (ViewModel.Card != null) { GoToState(CardDataName); CanvasContainer.AbortAnimation(ThrobAnimationName); } else { GoToState(NoCardDataName); CanvasContainer.Animate(ThrobAnimationName, _promptThrobAnimation, rate: 16, length: 3000, repeat: () => true); } } }