/// <summary>
    /// Checks for each tile that is not a mine, whether a mine is placed in any of the 8 tiles around it, and adds a count on the tile's view.
    /// </summary>
    private void AssignHints( )
    {
        for (int i = 0; i < _model._gridSize.row; i++)
        {
            for (int j = 0; j < _model._gridSize.column; j++)
            {
                if (_view._gameGridTiles [i, j]._isMine)
                {
                    continue;
                }

                int mineCount = 0;

                if (j - 1 >= 0 && _view._gameGridTiles [i, j - 1]._isMine)     //left
                {
                    mineCount++;
                }
                if (j + 1 < _view._gameGridTiles.GetLength(1) && _view._gameGridTiles [i, j + 1]._isMine)       //right
                {
                    mineCount++;
                }

                if (i - 1 >= 0)
                {
                    if (_view._gameGridTiles [i - 1, j]._isMine)    //up-center
                    {
                        mineCount++;
                    }
                    if (j - 1 >= 0 && _view._gameGridTiles [i - 1, j - 1]._isMine)     //up-left
                    {
                        mineCount++;
                    }
                    if (j + 1 < _view._gameGridTiles.GetLength(1) && _view._gameGridTiles [i - 1, j + 1]._isMine)       //up-right
                    {
                        mineCount++;
                    }
                }

                if (i + 1 < _view._gameGridTiles.GetLength(0))
                {
                    if (_view._gameGridTiles [i + 1, j]._isMine)    //down-center
                    {
                        mineCount++;
                    }
                    if (j - 1 >= 0 && _view._gameGridTiles [i + 1, j - 1]._isMine)    //down-left
                    {
                        mineCount++;
                    }
                    if (j + 1 < _view._gameGridTiles.GetLength(1) && _view._gameGridTiles [i + 1, j + 1]._isMine)       //down-right
                    {
                        mineCount++;
                    }
                }

                GridCoordinates gc;
                gc.row    = i;
                gc.column = j;
                if (mineCount > 0)
                {
                    _view.AssignTileAsHint(gc, mineCount);
                }
            }
        }
    }