diff --git a/src/Avalonia.Controls/Presenters/ScrollContentPresenter.cs b/src/Avalonia.Controls/Presenters/ScrollContentPresenter.cs index 701e0e4ead..bd694b200c 100644 --- a/src/Avalonia.Controls/Presenters/ScrollContentPresenter.cs +++ b/src/Avalonia.Controls/Presenters/ScrollContentPresenter.cs @@ -101,6 +101,7 @@ namespace Avalonia.Controls.Presenters private CompositeDisposable? _ownerSubscriptions; private ScrollViewer? _owner; private IScrollSnapPointsInfo? _scrollSnapPointsInfo; + private bool _isSnapPointsUpdated; /// /// Initializes static members of the class. @@ -379,6 +380,13 @@ namespace Avalonia.Controls.Presenters CanVerticallyScroll ? double.PositiveInfinity : availableSize.Height); Child.Measure(constraint); + + if (!_isSnapPointsUpdated) + { + _isSnapPointsUpdated = true; + UpdateSnapPoints(); + } + return Child.DesiredSize.Constrain(availableSize); }