2011-10-12 51 views
0

我有一個GridView和我使用分頁它排序GridView的問題

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) 
{ 
    GridView1.PageIndex = e.NewPageIndex; 
    this.BindData(); 
} 

現在的問題是,當我在報頭點擊排序的GridView控件,然後我去第二頁,然後再來回到第一個,它不記得排序表達式DESC或ASC。

無論點擊頁面索引,我如何堅持它的排序方向?

謝謝

回答

1

使用ViewState的存儲SortDirection像herehere

如果您BindData方法還加載它應該,你需要通過這個SortDirection您的數據源進行排序的數據源。更改BindData,以便它將SortDirection和PageIndex作爲參數。

例如:

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) 
{ 
    this.BindData(this.SortDirection,e.NewPageIndex); //if SortDirection is a property that returns the ViewState value 
} 

然後進行排序Grid的數據源,並設置它的PageIndex相應地存在。