Как отсортировать данные в GridView в asp.net - PullRequest
1 голос
/ 02 сентября 2010

Как отсортировать данные, полученные GridView, по некоторому столбцу.Я пытаюсь сделать что-то подобное, но это не работает.

protected void GridView_Sorting(object sender, GridViewSortEventArgs e)
{
    if (sender.GetType() != typeof(GridView))
        return;
    DataTable dt = (DataTable)((GridView)sender).DataSource;

    DataTable dtClone = dt.Clone();


    dt.AsEnumerable().OrderBy(row => row.Field <string>(e.SortExpression));
    ((GridView)sender).Source(dtClone);
}

Ответы [ 4 ]

1 голос
/ 09 сентября 2010

При сортировке обязательно приведите вашу таблицу к DataView.Вы сэкономите много времени за ручную реализацию методов сортировки.

1 голос
/ 03 сентября 2010

Добавьте атрибуты OnSorting="gridView_Sorting" AllowSorting="true" в Gridview

и SortExpression="ColumnName" в столбец

и внедрите событие OnSorting.

проверьте ссылки

Сортировка данных GridView

Как отсортировать данные в виде сетки?

Как отсортировать данные в GridView

Сортировка данных в GridView

Как отсортировать GridView?

1 голос
/ 09 сентября 2010

В прошлом я делал что-то подобное для сортировки таблицы данных:

DataTable dt = new DataTable(); // your data table
dt.DefaultView.Sort = "your_field" + "sort_direction";
DataView dv = new DataView(dt);
dv.Sort = ("your_field" + "sort_direction");
yourGridView.DataSource = dv;
1 голос
/ 02 сентября 2010

Вы можете либо заново привязать представление сетки к отсортированному объекту данных, либо применить выражение сортировки к самому виду сетки, а не к базовой таблице привязок.

Это довольно хорошее резюме со ссылками на примеры:

http://msdn.microsoft.com/en-us/library/hwf94875.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...