If you don't want to use a stored proc then you don't have much of a choice.
Try something like this
int pageSize = 10;
int index = 0;
List<DataRow> rows = new List<DataRow>();
for(int x = index; x < datatable.Rows.Count || x < x + pageSize; x++)
{
rows.Add(datatable.Rows[x]);
}
grid.DataSource = rows;
Of course this means you need to keep the entire DataTable in memory or persisted and retrieved elsewhere. Depending on the size, that could be very inefficient.