asp.net Telerik控件实现分页不丢失记录
2013-09-18 15:59
423 查看
#region 定义数组 public ArrayList CkList { get { return (ViewState["cklist"] != null) ? (ArrayList)ViewState["cklist"] : null; } set { ViewState["cklist"] = value; } } #endregion #region 每次页面显示前加载数据 protected void RadGrid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e) { if (e.Item is GridDataItem) { Label lbl = e.Item.FindControl("lblRowNumber") as Label; int currPageIndex = RadGrid1.MasterTableView.CurrentPageIndex; int pageSize = RadGrid1.MasterTableView.PageSize; lbl.Text = Convert.ToString(e.Item.ItemIndex + 1 + currPageIndex * pageSize); GridDataItem item = e.Item as GridDataItem; CheckBox ck = e.Item.FindControl("chkAll") as CheckBox; string tid = item.GetDataKeyValue("PK_VIPAddress").ToString(); if (CkList != null) { if (CkList.Contains(tid)) { ck.Checked = true; } if (CkList != null) { hfRowId.Value = CkList.Count.ToString(); } } } } #endregion #region 每次翻页的时候存储选择记录和当前页数,重新绑定radgrid protected void RadGrid1_PageIndexChanged(object sender, GridPageChangedEventArgs e) { SavePhone(); RadGrid1.CurrentPageIndex = e.NewPageIndex; RadGrid1.Rebind(); } #endregion #region 保存当前选择记录 private void SavePhone() { ArrayList cklist = null; if (CkList == null) { cklist = new ArrayList(); } else { cklist = CkList; } foreach (GridDataItem item in RadGrid1.MasterTableView.Items) { string tid = item.GetDataKeyValue("PK_VIPAddress").ToString(); CheckBox ck = item.FindControl("chkAll") as CheckBox; if (ck.Checked && !cklist.Contains(tid)) { cklist.Add(tid); } else if (!ck.Checked && cklist.Contains(tid)) { cklist.Remove(tid); } this.CkList = cklist; if (CkList != null) { hfRowId.Value = CkList.Count.ToString(); } } this.Cache["CkList"] = CkList; //存储选择记录,方便另外页面调用 } #endregion
相关文章推荐
- asp.net下Repeater使用 AspNetPager分页控件 不用存储过程 完美实现
- Asp.Net分页方法:JQuery插件实现Ajax无刷新分页、AspNetPager分页控件实现分页
- asp.net 使用ObjectDataSource控件在ASP.NET中实现Ajax真分页
- 使用 ASP.NET Atlas PageNavigator控件实现客户端分页导航
- asp.net Datalist控件实现分页功能
- Asp.net 利用Repeater和ObjectDataSource 实现自定义分页控件
- Asp.Net分页方法:JQuery插件实现Ajax无刷新分页、AspNetPager分页控件实现分页
- 使用 ASP.NET Atlas PageNavigator控件实现客户端分页导航
- ASP.NET 使用DataList控件实现分页显示数据
- asp.net Datalist控件实现分页功能
- Asp.Net分页方法:JQuery插件实现Ajax无刷新分页、AspNetPager分页控件实现分页
- asp.net中使用自定义控件的方式实现一个分页控件的代码
- ASP.NET中Repeater控件实现分页功能
- 批量删除记录时如何实现全选方法总结 (转)http://www.cnblogs.com/chenou/articles/1349646.html[Asp.net Ajax 控件]
- Asp.net 实现GridView分页时记录CheckBox状态
- asp.net中使用自定义控件的方式实现一个分页控件的代码
- 我要学ASP.NET MVC 3.0(十九): MVC 3.0 实例之使用开源控件实现表格排序和分页
- ASP.NET中Repeater控件实现分页功能
- 使用ASP.NETAtlasPageNavigator控件实现客户端分页导航
- Asp.net 实现GridView分页时记录CheckBox状态