public void Stop() { if (_trace.IsEnabled) { _trace.WriteEventActivity( eventId: TraceProvider.StoryBoard_Stop, opCode: EventOpcode.Stop, activity: _traceActivity, payload: new object[] { Target?.GetType().ToString(), PropertyInfo?.Path } ); } State = TimelineState.Stopped; _hasFillingChildren = false; if (Children != null) { for (int i = 0; i < Children.Count; i++) { ITimeline child = Children[i]; child.Stop(); DisposeChildRegistrations(child); } } _runningChildren = 0; }