Datagrid или GridView?
вы можете создать представление данных и отсортировать его (в конструкторе), а затем привязать его обратно к сетке в событии "сортировка"
что-то вроде этого может быть тем, что вы ищете
protected void myGridView_Sorting(object sender, GridViewSortEventArgs e)
{
// Your data
DataTable dt = new DataTable();
// Create the view
DataView dv = new DataView(dt, "", "COLUMN_TO_SORT", DataViewRowState.CurrentRows);
// Rebind
myGridView.DataSource = dt;
myGridView.DataBind();
}