2010-06-21 121 views
0

我有一個telerik radgrid控件在我的頁面上顯示文章列表。如果我點擊一個頁面,然後是一篇文章,然後又回到列表,我回到了第一頁,而不是之前的頁面。Telerik radgrid不記得頁碼

有沒有解決方案呢?

回答

4

我假設你正在做一個回傳,事情是服務器端...

這是一個兩個步驟...

首先在onclick事件點擊文章,將頁面索引放入會話變量中。

其次,在RadGrid的PreRender事件中,從先前設置的會話變量中獲取頁面索引。

// Set the page index, call this on your OnClick event 
private void SetRadGridPageIndex(int PageIndex) 
{ 
    Session["RadGridCurrentPageIndex"] = PageIndex; 
} 

// Get the page index, call this on RadGrid's PreRender event 
// Don't forget to Rebind the RadGrid 
private void GetRadGridPageIndex() 
{ 
    // Go to the previously selected page 
    if (Session["RadGridCurrentPageIndex"] != null) 
    { 
     this.RadGrid1.CurrentPageIndex = Convert.ToInt32(Session["RadGridCurrentPageIndex"]); 
     this.RadGrid1.MasterTableView.Rebind(); 
    } 
} 
+0

答案是非常非常好,它確實需要什麼,只是一點點另外的完整性,執行時PageRender時,如果在真實的案例,加上這樣的事情後:會話[「RadGridCurrentPageIndex」] = null;或者當你在跳轉到PageIndex的時候,你會在PageIndex中設置session的值,然後你就不再需要這個值了。 – 2014-05-06 23:26:48

0

當您使用網格導航回頁面時,是否使用瀏覽器的「後退」按鈕?如果是這樣,則需要爲網格頁面索引(CurrentPageIndex)使用緩存或會話存儲(例如),然後將其恢復。

另外請確保您使用與NeedDataSource事件或數據源控件的綁定。

迪克