Esempio n. 1
0
		public void ArrangeOverride3 ()
		{
			bool loaded = false;
			ConcreteFrameworkElement c = new ConcreteFrameworkElement ();
			c.Loaded += delegate { loaded = true; };
			TestPanel.Children.Add (c);

			c.Arrange (new Rect (0, 0, 100, 100));
			Assert.IsFalse (c.Arranged, "#1");

			c.InvalidateArrange ();
			c.Arrange (new Rect (0, 0, 100, 100));
			Assert.IsFalse (c.Arranged, "#2");

			EnqueueConditional (() => loaded, "#3");
			Enqueue (() => { Assert.IsTrue (c.Arranged, "#4"); });
			EnqueueTestComplete ();
		}
Esempio n. 2
0
		public void LayoutUpdated ()
		{
			bool layoutUpdated = false;
			bool loaded = false;
			ConcreteFrameworkElement element = new ConcreteFrameworkElement ();
			EventHandler handler = (o, e) => { layoutUpdated = true; };
			element.LayoutUpdated += handler;
			element.Loaded += (o, e) => { loaded = true; };
			Enqueue (() => TestPanel.Children.Add (element));
			EnqueueConditional (() => loaded );
			EnqueueConditional (() => layoutUpdated);
			Enqueue (() => { layoutUpdated = false; element.InvalidateArrange (); });
			EnqueueConditional (() => layoutUpdated);
			Enqueue (() => { layoutUpdated = false; element.InvalidateMeasure (); });
			EnqueueConditional (() => layoutUpdated);
			Enqueue (() => { element.LayoutUpdated -= handler; });
			EnqueueTestComplete ();
		}
Esempio n. 3
0
		public void ArrangeOverride2 ()
		{
			ConcreteFrameworkElement c = new ConcreteFrameworkElement ();
			c.Arrange (new Rect (0, 0, 100, 100));
			Assert.IsFalse (c.Arranged, "#1");
			
			c.InvalidateArrange ();
			c.Arrange (new Rect (0, 0, 100, 100));
			Assert.IsFalse (c.Arranged, "#2");
		}
Esempio n. 4
0
		public void InvalidateArrange ()
		{
			bool loaded = false;
			ConcreteFrameworkElement c = new ConcreteFrameworkElement ();
			c.Loaded += delegate { loaded = true; };
			TestPanel.Children.Add (c);
			EnqueueConditional (() => loaded, "#1");
			EnqueueConditional (() => c.Measured, "#2");
			EnqueueConditional (() => c.Arranged, "#3");
			Enqueue (() => loaded = c.Arranged = c.Measured = c.Templated = false);
			Enqueue (() => c.InvalidateArrange ());
			EnqueueConditional (() => c.Arranged, "#4");

			EnqueueTestComplete ();
		}