示例#1
0
 private void MoveToLast(CachedSize key, MeasureSizeEntry value)
 {
     if (_queue.Count != 0 && _queue.Last.Value != key)
     {
         _queue.Remove(value.ListNode);
         _queue.AddLast(value.ListNode);
     }
 }
            internal void CacheMeasure(Size desiredSize, Size measuredSize)
            {
                Scavenge();

                var key  = CachedTuple.Create(desiredSize.Width, desiredSize.Height);
                var node = _queue.AddLast(key);

                _sizes[key] = new MeasureSizeEntry(measuredSize, node);
            }
            private void MoveToLast(CachedSize key, MeasureSizeEntry value)
            {
                if (_queue.Count == 0 || Equals(_queue.Last.Value, key))
                {
                    return;
                }

                _queue.Remove(value.ListNode);
                _queue.AddLast(value.ListNode);
            }