2011-06-01 75 views
2

我有一個列表綁定在gridview上。對啓用分頁的gridview排序

HistoryGrid.DataSource = objGrid; 
HistoryGrid.DataBind(); 

AllowSorting="true" AllowPaging="True" 

<asp:BoundField HeaderText="hits" DataField="numberOfHits" 
    SortExpression="numberOfHits" ItemStyle-HorizontalAlign="Center" /> 

這並不奏效。我還需要什麼?

+0

什麼樣的數據源是您有約束力?如果使用有限數量的數據源之一,則只會自動排序。 – DOK 2011-06-01 14:35:36

+0

我將列表轉換爲Datatable,現在我在更改頁面時遇到問題,不顯示排序數據。 – gormit 2011-06-01 15:59:20

回答

2

如果您使用list object as DataSource,那麼您的排序功能將不起作用。

您可以使用DataTable as DataSource到您的Gridview,然後它將工作。

你可以從這個線程更多的想法:How to convert a GridView to DataTable and sort the DataTable?

+0

謝謝,我成功了,但在PageIndexChanging尋呼griedview,我有HistoryGrid.PageIndex = e.NewPageIndex;和DataBind()。當我去其他頁面時,它不排序數據。我griedview是在更新面板。 – gormit 2011-06-01 15:54:12

+0

好吧,我用另一個dataView來做。再次感謝。 – gormit 2011-06-01 16:07:28