Esempio n. 1
0
        public override void Arrange(RectangleF finalRect)
        {
            var orientation = this.Orientation;
            var margin      = this.Margin;

            if ((orientation == Orientation.Horizontal &&
                 MathF.AreNotClose((nfloat)this.ActualHeight + margin.VerticalThicknessF(), finalRect.Height)) ||
                (orientation == Orientation.Vertical &&
                 MathF.AreNotClose((nfloat)this.ActualWidth + margin.HorizontalThicknessF(), finalRect.Width)))
            {
                this.needsResizeChilds.Clear();
                foreach (var child in this.Children)
                {
                    this.needsResizeChilds.Add(child);
                }
            }

            base.Arrange(finalRect);
            this.ArrangeChilds(finalRect.Size);
        }