我的页面上有一个 telerik radgrid-control,用于显示文章列表。如果我单击一个页面,然后单击一篇文章,然后再次返回列表,我会回到第一页,而不是之前所在的页面。
这个问题有解决办法吗?
我假设你正在进行回发并且事情是在服务器端......
这是一个 2 步过程...
首先在点击文章的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();
}
}
当您导航回带有网格的页面时,您是否使用浏览器的“后退”按钮?如果是这样,您将需要使用缓存或会话存储(例如)作为网格页面索引(CurrentPageIndex),然后将其恢复。
还要确保使用与 NeedDataSource 事件或数据源控件的绑定。
迪克