public void ZoomTowards(float newCellSize, Point location) { Coordinate oldCoordinate = ToWorldCoordinate(location); CellSize = newCellSize; Coordinate newCoordinate = ToWorldCoordinate(location); TopLeft = TopLeft.Offset( oldCoordinate.X - newCoordinate.X, oldCoordinate.Y - newCoordinate.Y); }