diff --git a/dune/solvers/transferoperators/genericmultigridtransfer.hh b/dune/solvers/transferoperators/genericmultigridtransfer.hh
index d50319f583573c7a060ca0bc2ab4acfe3dac07b5..7964a5f38650c48ccc671449cf8c944525109149 100644
--- a/dune/solvers/transferoperators/genericmultigridtransfer.hh
+++ b/dune/solvers/transferoperators/genericmultigridtransfer.hh
@@ -91,8 +91,9 @@ public:
 
         typedef typename GridType::template Codim<0>::LevelIterator ElementIterator;
 
-        ElementIterator cIt    = grid.template lbegin<0>(cL);
-        ElementIterator cEndIt = grid.template lend<0>(cL);
+        typename GridType::LevelGridView levelView = grid.levelGridView(cL);
+        ElementIterator cIt    = levelView.template begin<0>();
+        ElementIterator cEndIt = levelView.template end<0>();
 
 
         // ///////////////////////////////////////////
@@ -164,7 +165,7 @@ public:
         // /////////////////////////////////////////////
         // Compute the matrix
         // /////////////////////////////////////////////
-        cIt    = grid.template lbegin<0>(cL);
+        cIt    = levelView.template begin<0>();
         for (; cIt != cEndIt; ++cIt) {
 
             // Get local finite element