Exemple #1
0
        internal virtual void SetFirst(Vector scrollPos)
        {
            FirstInCache   = VirtualizingAverages.GetStartIndex(_templatedParent, _panelOffset - _cache.GetBackCacheSize(_tempViewport, _tempAverageItem), _items, Vert);
            _firstInView   = VirtualizingAverages.GetStartIndex(_templatedParent, _panelOffset, _items, Vert);
            _currentOffset = VirtualizingAverages.GetOffsetForIndex(_templatedParent, FirstInCache, _items, Vert);
            _numInView     = 0;
            _numInCache    = 0;
            NumInFullView  = 0;
            var av = VirtualizingAverages.GetEstimatedAverage(_templatedParent, _items, Vert);

            _tempAverageItem = Vert ? av.Height : av.Width;
        }
Exemple #2
0
        internal override void SetFirst(Vector scrollPos)
        {
            _firstInView = (int)(Vert ? scrollPos.Y : scrollPos.X);
            if (_items is IGroupingView gv)
            {
                _firstInView = gv.GetLocalItemPosition(_firstInView);
            }
            ScrollOffset   = (int)(Vert ? scrollPos.Y : scrollPos.X) - _firstInView;
            _currentOffset = VirtualizingAverages.GetOffsetForIndex(_templatedParent, _firstInView, _items, Vert);
            FirstInCache   = VirtualizingAverages.GetStartIndex(_templatedParent, _currentOffset - _cache.GetBackCacheSize(_tempViewport, _tempAverageItem), _items, Vert);
            _currentOffset = VirtualizingAverages.GetOffsetForIndex(_templatedParent, FirstInCache, _items, Vert);
            _numInView     = 0;
            _numInCache    = 0;
            NumInFullView  = 0;
            var av = VirtualizingAverages.GetEstimatedAverage(_templatedParent, _items, Vert);

            _tempAverageItem = Vert ? av.Height : av.Width;
        }