Ejemplo n.º 1
0
        public void Lays_Out_Children_Horizontally_Even_If_Larger_Than_Panel()
        {
            var target = new StackPanel
            {
                Width       = 60,
                Orientation = Orientation.Horizontal,
                Children    =
                {
                    new Border {
                        Width = 20, Height = 120
                    },
                    new Border {
                        Width = 30
                    },
                    new Border {
                        Width = 50
                    },
                }
            };

            target.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity));
            target.Arrange(new Rect(target.DesiredSize));

            Assert.Equal(new Size(60, 120), target.ClippedBoundsRelativeTo(target).Size);
            Assert.Equal(new Rect(0, 0, 20, 120), target.Children[0].ClippedBoundsRelativeTo(target));
            Assert.Equal(new Rect(20, 0, 30, 120), target.Children[1].ClippedBoundsRelativeTo(target));
            Assert.Equal(new Rect(50, 0, 50, 120), target.Children[2].ClippedBoundsRelativeTo(target));
        }
Ejemplo n.º 2
0
        public void Lays_Out_Children_Vertically_Even_If_Larger_Than_Panel()
        {
            var target = new StackPanel
            {
                Height   = 60,
                Children =
                {
                    new Border {
                        Height = 20, Width = 120
                    },
                    new Border {
                        Height = 30
                    },
                    new Border {
                        Height = 50
                    },
                }
            };

            target.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity));
            target.Arrange(new Rect(target.DesiredSize));

            Assert.Equal(new Size(120, 60), target.ClippedBoundsRelativeTo(target).Size);
            Assert.Equal(new Rect(0, 0, 120, 20), target.Children[0].ClippedBoundsRelativeTo(target));
            Assert.Equal(new Rect(0, 20, 120, 30), target.Children[1].ClippedBoundsRelativeTo(target));
            Assert.Equal(new Rect(0, 50, 120, 50), target.Children[2].ClippedBoundsRelativeTo(target));
        }