anchor.diff:        _isColumnsChanged = false;
   
         _updateColumnsAndHeaders();
  +    }
  +    
  +    if (_isSelectedIndexUpdateRequired) {
  +      _isSelectedIndexUpdateRequired = false;
  +      
  +      selectedIndex = (_selectedItem != null) ? _dataProvider.indexOf(_selectedItem) : -1;
       }
     }
     
  
positive.code:   void _dataProvider_collectionChangedHandler(List<ListChangeRecord> changes) {
      super._dataProvider_collectionChangedHandler(changes);
      
      selectedIndex = _dataProvider.indexOf(_selectedItem);
    }
    
    @override
  
negative.code:   VGroup _gridContainer;
    HGroup _headerBounds, _headerContainer;
    ListRenderer _list;
    bool _isSelectedIndexUpdateRequired = false;
    
    ListRenderer get list => _list;
  
  