Пример #1
0
		public void RemoveChildThenStart4 ()
		{
			Canvas c = CreateStoryboard ();
			Storyboard sb = (Storyboard) c.Resources ["Storyboard"];
			Storyboard child = (Storyboard) sb.Children [1];
			sb.Children.RemoveAt (1);
			c.Resources.Clear ();

			TimelineCollection collection = new TimelineCollection();
			Storyboard storyboard = new Storyboard ();
			storyboard.Children.Add (child);
			Storyboard.SetTargetName (child, null);
			Storyboard.SetTarget (child, c.Children[0]);

			CreateAsyncTest (c,
					 delegate { Console.WriteLine (1); storyboard.Begin (); },
				delegate { Console.WriteLine (2); storyboard.Stop (); },
				delegate { Console.WriteLine (3); collection.Add (storyboard); },
				delegate { Console.WriteLine (4); storyboard.Begin (); },
				delegate { Console.WriteLine (5); storyboard.Stop (); },
				delegate { Console.WriteLine (6); collection.Remove (storyboard); },
				delegate { Console.WriteLine (7); sb.Children.Add (storyboard); },
				delegate { Console.WriteLine (8); sb.Children.Remove (storyboard); },
				delegate { Console.WriteLine (9); Assert.Throws<InvalidOperationException> (delegate { storyboard.Begin (); }); }
			);
		}