Основы ASP.NET 2.0


         

в заголовке гиперссылки, при нажатии


Установка свойства AllowSorting создает в заголовке гиперссылки, при нажатии на которые таблица будет сортироваться по выбранному полю. В этом проявляется преимущество перед DataGrid, для сортировки необходимо переопределить событие SortCommand (рис. 9.1).

После повторного нажатия на заголовок таблица сортируется по этому полю в убывающем порядке.

Иногда значения в каком-либо поле могут повторяться, и нужно отсортировать значения сначала по первому полю, затем по второму. Но сортировка по умолчанию сортирует только по одному полю. Если теперь нажать мышкой на Comments, сортировка по имени пропадет.


Рис. 9.1. 

ИмяComments
BurdaОдесса, ведущий кулинар
BurdaРедактор журнала мод
BushВашингтон, президент
BushБуш-отец


В таком случае поможет немного кодирования. Переопределим событие Sorting:

protected void GridView1_Sorting(object sender, GridViewSortEventArgs e) { string oldExpression = GridView1.SortExpression; string newExpression = e.SortExpression; if (oldExpression.IndexOf(newExpression) < 0) { if (oldExpression.Length > 0) e.SortExpression = oldExpression + ", " + newExpression; else e.SortExpression = newExpression; } else { e.SortExpression = oldExpression; } }

Отсортируем сначала по имени, потом по Comments:

ИмяComments
BurdaОдесса, ведущий кулинар
BurdaРедактор журнала мод
BushБуш-отец
BushВашингтон, президент



Содержание  Назад  Вперед