The IList<T> interface is 'explicitly' implemented by the indexer, so you need to use the interface when accessing it. See [this SO answer](http://stackoverflow.com/questions/143405/c-sharp-interfaces-implicit-implementation-versus-explicit-implementation) for the difference.