Skip to content

Instantly share code, notes, and snippets.

@lewing
Created September 17, 2010 14:53
Show Gist options
  • Save lewing/584327 to your computer and use it in GitHub Desktop.
Save lewing/584327 to your computer and use it in GitHub Desktop.
[Asynchronous]
[MoonlightBug ("Moonlight fails to break the inheritance chain here")]
public void PropertyInheritance_FlowDirection ()
{
var stack = new StackPanel ();
var image = new Image ();
var border = new Border ();
stack.Children.Add (image);
stack.Children.Add (border);
TestPanel.Children.Add (stack);
// Some elements break the inheritance of default values
// for Flow direction
Enqueue (() => {
Assert.AreEqual (stack.FlowDirection, FlowDirection.LeftToRight, "#1");
Assert.AreEqual (image.FlowDirection, FlowDirection.LeftToRight, "#2.1");
Assert.AreEqual (border.FlowDirection, FlowDirection.LeftToRight, "#2.2");
stack.FlowDirection = FlowDirection.RightToLeft;
TestPanel.UpdateLayout ();
Assert.AreEqual (stack.FlowDirection, FlowDirection.RightToLeft, "#3");
Assert.AreEqual (image.FlowDirection, FlowDirection.LeftToRight, "#4.1");
Assert.AreEqual (border.FlowDirection, FlowDirection.RightToLeft, "#4.2");
Assert.AreEqual (DependencyProperty.UnsetValue, image.ReadLocalValue (FrameworkElement.FlowDirectionProperty), "#5.1");
Assert.AreEqual (DependencyProperty.UnsetValue, border.ReadLocalValue (FrameworkElement.FlowDirectionProperty), "#5.2");
});
EnqueueTestComplete ();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment