asp.net Gridview分页保存选项 复制代码 代码如下:#region //'Revision: 1.00 Created Date: 2013/08/02 Created ID: Una [#1300071]增加多選框 /// /// Session獲取多選框值 /// private void RememberOldValues() { ArrayList categoryIDList = new ArrayList(); string index = ""; foreach (GridViewRow row in gridView.Rows) { index = (string)gridView.DataKeys[row.RowIndex].Value; bool result = ((CheckBox)row.FindControl("DeleteThis")).Checked; // Check in the Session if (Session["id"] != null) categoryIDList = (ArrayList)Session["id"]; if (result) { if (!categoryIDList.Contains(index)) categoryIDList.Add(index); } else categoryIDList.Remove(index); } if (categoryIDList != null && categoryIDList.Count > 0) Session["id"] = categoryIDList; } /// /// Session分頁時之前多選框為true /// private void RePopulateValues() { ArrayList categoryIDList = (ArrayList)Session["id"]; if (categoryIDList != null && categoryIDList.Count > 0) { foreach (GridViewRow row in gridView.Rows) { string index = (string)gridView.DataKeys[row.RowIndex].Value; if (categoryIDList.Contains(index)) { CheckBox myCheckBox = (CheckBox)row.FindControl("DeleteThis"); myCheckBox.Checked = true; } } } } #endregion复制代码 代码如下:protected void gridView_PageIndexChanging(object sender, GridViewPageEventArgs e) { RememberOldValues(); gridView.PageIndex = e.NewPageIndex; BindData(); RePopulateValues(); }复制代码 代码如下:protected void btnSelect_Click(object sender, EventArgs e) { string items = ""; ArrayList categoryIDList = new ArrayList(); string index =""; foreach (GridViewRow row in gridView.Rows) { index = (string)gridView.DataKeys[row.RowIndex].Value; bool result = ((CheckBox)row.FindControl("DeleteThis")).Checked; // Check in the Session if (Session["id"] != null) categoryIDList = (ArrayList)Session["id"]; if (result) { if (!categoryIDList.Contains(index)) categoryIDList.Add(index); } else categoryIDList.Remove(index); } if (categoryIDList != null && categoryIDList.Count > 0) for (int i = 0; i < categoryIDList.Count; i++) { items += categoryIDList[i] + ","; } items = items.Substring(0, items.Length - 1); ScriptManager.RegisterStartupScript(this, this.GetType(), "", "check('" + items + "');", true); Session.Remove("id"); }