public void GetRectAfterRelayout2() //Add two group, then remove first group
            {
                var layout = new StackLayout(0, new Size(800, 600));
                var size   = new Size(200, 300);

                // Frame 0
                layout.Begin();
                {
                    layout.BeginLayoutGroup(1, true); //add group 1
                    layout.GetRect(1, size);          //add rect 1
                    layout.EndLayoutGroup();
                    layout.BeginLayoutGroup(2, true); //add group 2
                    layout.GetRect(2, size);          //add rect 2
                    layout.EndLayoutGroup();
                }
                layout.Layout();

                // Frame 1
                layout.Begin();
                {
                    //remove group 1
                    layout.BeginLayoutGroup(2, true); //get group 2
                    layout.GetRect(2, size);          //get rect 2
                    layout.EndLayoutGroup();
                }
                layout.Layout();

                // Frame 2
                layout.Begin();
                {
                    //group 1 removed
                    layout.BeginLayoutGroup(2, true);    //get group 2
                    var rect2 = layout.GetRect(2, size); //get rect 3
                    layout.EndLayoutGroup();

                    Assert.Equal(0, rect2.X);
                    Assert.Equal(0, rect2.Y);
                    Assert.Equal(size.Width, rect2.Width);
                    Assert.Equal(size.Height, rect2.Height);
                }
                layout.Layout();
            }
Beispiel #2
0
            public void GetRectInsideGroup()
            {
                var layout = new StackLayout(0, new Size(800, 600));
                var size   = new Size(200, 300);

                layout.Begin();
                layout.BeginLayoutGroup(1, true);
                layout.GetRect(2, size);
                layout.EndLayoutGroup();
                layout.Layout();

                layout.Begin();
                layout.BeginLayoutGroup(1, true);
                var rect = layout.GetRect(2, size);

                layout.EndLayoutGroup();

                Assert.Equal(0, rect.X);
                Assert.Equal(0, rect.Y);
                Assert.Equal(size.Width, rect.Width);
                Assert.Equal(size.Height, rect.Height);
            }
            public void GetRectAfterRelayout4()
            {
                var layout = new StackLayout(0, new Size(800, 600));
                var size   = new Size(200, 300);

                // Frame 0
                layout.Begin();
                {
                    layout.GetRect(1, size);

                    layout.BeginLayoutGroup(1, true);
                    layout.GetRect(2, size);
                    layout.EndLayoutGroup();

                    layout.GetRect(3, size);

                    layout.BeginLayoutGroup(2, true);
                    layout.GetRect(4, size);
                    layout.EndLayoutGroup();
                }
                layout.Layout();

                layout.Begin();
                {
                    layout.GetRect(1, size);

                    layout.BeginLayoutGroup(1, true);
                    layout.GetRect(2, size);
                    layout.EndLayoutGroup();

                    layout.GetRect(3, size);

                    layout.BeginLayoutGroup(2, true);
                    layout.GetRect(4, size);
                    layout.EndLayoutGroup();
                }
                layout.Layout();
            }