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); }