public override EvasObject CreateContent(EvasObject parent)
        {
            Box box = new ColoredBox(parent)
            {
                AlignmentX      = -1,
                AlignmentY      = -1,
                WeightX         = 1,
                WeightY         = 1,
                BackgroundColor = Color.Pink
            };

            box.Show();

            var card1 = CreateCard1(parent);
            var card2 = CreateCard2(parent);

            var label1 = new Label(parent)
            {
                Text          = "<span font_size=35>Card 1</span>",
                MinimumWidth  = 500,
                MinimumHeight = 30
            };

            label1.Show();

            var label2 = new Label(parent)
            {
                Text          = "<span font_size=35>Card 2 Layout</span>",
                MinimumWidth  = 500,
                MinimumHeight = 30
            };

            label2.Show();

            box.PackEnd(label1);
            box.PackEnd(card1);
            box.PackEnd(label2);
            box.PackEnd(card2);

            box.SetLayoutCallback(() =>
            {
                var rect        = box.Geometry;
                label1.Geometry = new Rect(rect.X + 50, rect.Y + 50, label1.MinimumWidth, label1.MinimumHeight);
                card1.Geometry  = new Rect(rect.X + 50, rect.Y + 100, card1.MinimumWidth, card1.MinimumHeight);
                label2.Geometry = new Rect(rect.X + 50, card1.Geometry.Y + card1.Geometry.Height + 50, label2.MinimumWidth, label2.MinimumHeight);
                card2.Geometry  = new Rect(rect.X + 50, card1.Geometry.Y + card1.Geometry.Height + 100, card2.MinimumWidth, card2.MinimumHeight);
            });

            return(box);
        }