diff --git a/Perspex.Controls/Primitives/Track.cs b/Perspex.Controls/Primitives/Track.cs index 2e26608b28..7127faea87 100644 --- a/Perspex.Controls/Primitives/Track.cs +++ b/Perspex.Controls/Primitives/Track.cs @@ -133,6 +133,7 @@ namespace Perspex.Controls.Primitives { var width = Math.Max(finalSize.Width * thumbFraction, thumb.MinWidth); var x = (finalSize.Width - width) * valueFraction; + System.Diagnostics.Debug.WriteLine("" + this.Value + " " + x); thumb.Arrange(new Rect(x, 0, width, finalSize.Height)); } else diff --git a/Perspex.Layout/LayoutManager.cs b/Perspex.Layout/LayoutManager.cs index 92f0adc14e..f70b713be3 100644 --- a/Perspex.Layout/LayoutManager.cs +++ b/Perspex.Layout/LayoutManager.cs @@ -198,11 +198,12 @@ namespace Perspex.Layout { this.Root.Arrange(new Rect(this.Root.ClientSize)); } - else + + foreach (var item in arrange) { - foreach (var item in arrange) + if (!item.Control.IsArrangeValid) { - if (!item.Control.IsArrangeValid) + if (item.Control != this.Root) { var control = item.Control;