Users must have the ability to sort tables of information by any column, in ascending or descending order of numeric or text values. When sorting by text values, alphabetic (dictionary) sorting should be performed according to the language rules of the application's culture.
Using a WebGrid control you would set the AllowSortingDefault property on the WebGrid's DisplayLayout property (or the AllowSorting property to control user-driven sorting on an individual band) to Yes or OnClient. Use on-client to sort in Javascript and without making a postback to your Web server for better responsiveness.
Enable users to select their own columns for sorting by setting the HeaderClickActionDefault property on the WebGrid's DisplayLayout property (or the HeaderClickAction property to control user-driven sorting on an individual band) to either SortSingle or SortMulti. SortSingle allows the user to sort by a single column at a time, while SortMulti allows the user to add secondary columns to subsort the outcome that resulted from sorting on the first column. You can examine the SortIndicator property on a Column object to determine if, and in what direction, the rows have been sorted. You can also specify your own image files (and alternate text for Web accessibility standards compliance) to serve as visual indications on the sorted column headers as to which direction those columns are presently sorted.