日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何datagrid分页保持每页先前选择的checkbox的状态?

發布時間:2025/7/14 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何datagrid分页保持每页先前选择的checkbox的状态? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉:http://lovecherry.cnblogs.com/archive/2005/10/18/257338.html

網上很多保持分頁的datagird的checkbox選擇狀態的文章實現的是保存當前頁面的chexkbox所選,也就是說第一頁選擇了第一條記錄翻頁到第二頁后還是選擇第一條記錄,然后選擇了第二條記錄,再去看第一頁還是第二條記錄,保存的只是上次操作的結果,而我們往往希望分開保存所有頁面的選擇情況,下面是示例代碼:

前臺:

<%@?Page?language="c#"?Codebehind="WebForm1.aspx.cs"?AutoEventWireup="false"?Inherits="checktest.WebForm1"?%>
<!DOCTYPE?HTML?PUBLIC?"-//W3C//DTD?HTML?4.0?Transitional//EN"?>
<HTML>
????
<HEAD>
????????
<title>WebForm1</title>
????????
<meta?name="GENERATOR"?Content="Microsoft?Visual?Studio?.NET?7.1">
????????
<meta?name="CODE_LANGUAGE"?Content="C#">
????????
<meta?name="vs_defaultClientScript"?content="JavaScript">
????????
<meta?name="vs_targetSchema"?content="http://schemas.microsoft.com/intellisense/ie5">
????????
<LINK?href="css.css"?type="text/css"?rel="stylesheet">
????
</HEAD>
????
<body>
????????
<form?id="Form1"?method="post"?runat="server">
????????????
<asp:datagrid?id="DataGrid1"?runat="server"?AutoGenerateColumns="False"?CellSpacing="1"?BorderWidth="0px"
????????????????CellPadding
="5"?CssClass="border"?AllowPaging="True"?PageSize="10">
????????????????
<ItemStyle?CssClass="item"></ItemStyle>
????????????????
<HeaderStyle?CssClass="header"></HeaderStyle>
????????????????
<Columns>
????????????????????
<asp:TemplateColumn>
????????????????????????
<ItemTemplate>
????????????????????????????
<asp:CheckBox?ID="chk"?Runat="server"></asp:CheckBox>
????????????????????????
</ItemTemplate>
????????????????????
</asp:TemplateColumn>
????????????????????
<asp:BoundColumn?DataField="CustomerID"?HeaderText="CustomerID"></asp:BoundColumn>
????????????????????
<asp:BoundColumn?DataField="CompanyName"?HeaderText="CompanyName"></asp:BoundColumn>
????????????????????
<asp:BoundColumn?DataField="ContactTitle"?HeaderText="ContactTitle"></asp:BoundColumn>
????????????????
</Columns>
????????????????
<PagerStyle?CssClass="header"?Mode="NumericPages"></PagerStyle>
????????????
</asp:datagrid>
????????????
<asp:Button?id="Button1"?runat="server"?Text="清空記錄"></asp:Button>
????????
</form>
????
</body>
</HTML>

后臺:
using?System;
using?System.Collections;
using?System.ComponentModel;
using?System.Data;
using?System.Data.SqlClient;
using?System.Drawing;
using?System.Web;
using?System.Web.SessionState;
using?System.Web.UI;
using?System.Web.UI.WebControls;
using?System.Web.UI.HtmlControls;

namespace?checktest
{
????
public?class?WebForm1?:?System.Web.UI.Page
????{
????????
protected?System.Web.UI.WebControls.Button?Button1;
????????
protected?System.Web.UI.WebControls.DataGrid?DataGrid1;
????
????????
private?void?Page_Load(object?sender,?System.EventArgs?e)
????????{
????????????
if(!IsPostBack)
????????????{
????????????????SetBind();????????????????
????????????}
????????}
????????
????????
private?void?SetBind()
????????{
????????????SqlConnection?conn
=new?SqlConnection("server=(local);uid=sa;pwd=sa
;database=Northwind
");
????????????SqlDataAdapter?da
=new?SqlDataAdapter("select?*?from?Customers",conn);
????????????DataSet?ds
=new?DataSet();
????????????da.Fill(ds,
"table1");
????????????
this.DataGrid1.DataSource=ds.Tables["table1"];
????????????
this.DataGrid1.DataBind();????????????
????????}

????????
#region?Web?窗體設計器生成的代碼
????????
override?protected?void?OnInit(EventArgs?e)
????????{
????????????
//
????????????
//?CODEGEN:?該調用是?ASP.NET?Web?窗體設計器所必需的。
????????????
//
????????????InitializeComponent();
????????????
base.OnInit(e);
????????}
????????
????????
///?<summary>
????????
///?設計器支持所需的方法?-?不要使用代碼編輯器修改
????????
///?此方法的內容。
????????
///?</summary>
????????private?void?InitializeComponent()
????????{????
????????????
this.DataGrid1.PageIndexChanged?+=?new?System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.DataGrid1_PageIndexChanged);
????????????
this.DataGrid1.ItemDataBound?+=?new?System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGrid1_ItemDataBound);
????????????
this.Button1.Click?+=?new?System.EventHandler(this.Button1_Click);
????????????
this.Load?+=?new?System.EventHandler(this.Page_Load);

????????}
????????
#endregion

????????
private?void?DataGrid1_PageIndexChanged(object?source,?System.Web.UI.WebControls.DataGridPageChangedEventArgs?e)
????????{
????????????
string?data="";
????????????
foreach(DataGridItem?dgi?in?this.DataGrid1.Items)
????????????{
????????????????CheckBox?cb
=(CheckBox)dgi.FindControl("chk");
????????????????
if(cb.Checked)
????????????????????data
+="1";
????????????????
else
????????????????????data
+="0";
????????????}

????????????
if(ViewState["pagedata"]!=null)
????????????{
????????????????Hashtable?ht
=(Hashtable)ViewState["pagedata"];
????????????????
if(ht.Contains(this.DataGrid1.CurrentPageIndex))????????????????
????????????????????ht[
this.DataGrid1.CurrentPageIndex]=data;
????????????????
else
????????????????????ht.Add(
this.DataGrid1.CurrentPageIndex,data);
????????????????ViewState[
"pagedata"]=ht;
????????????}
????????????
else
????????????{
????????????????Hashtable?ht
=new?Hashtable();
????????????????ht.Add(
this.DataGrid1.CurrentPageIndex,data);
????????????????ViewState[
"pagedata"]=ht;
????????????}
????????????
this.DataGrid1.CurrentPageIndex=e.NewPageIndex;
????????????SetBind();
????????}

????????
private?void?DataGrid1_ItemDataBound(object?sender,?System.Web.UI.WebControls.DataGridItemEventArgs?e)
????????{
????????????
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem)
????????????{
????????????????
if(ViewState["pagedata"]!=null)
????????????????{
????????????????????Hashtable?ht
=(Hashtable)ViewState["pagedata"];
????????????????????
if(ht.Contains(this.DataGrid1.CurrentPageIndex))
????????????????????{
????????????????????????CheckBox?cb
=(CheckBox)e.Item.FindControl("chk");
????????????????????????cb.Checked
=ht[this.DataGrid1.CurrentPageIndex].ToString()[e.Item.ItemIndex].ToString()=="1";
????????????????????}
????????????????}
????????????}
????????}

????????
private?void?Button1_Click(object?sender,?System.EventArgs?e)
????????{
????????????
if(ViewState["pagedata"]!=null)
????????????{
????????????????Hashtable?ht
=new?Hashtable();
????????????????ViewState[
"pagedata"]=ht;
????????????????SetBind();
????????????}
????????}
????}
}

轉載于:https://www.cnblogs.com/Dragon-China/archive/2007/02/28/659080.html

總結

以上是生活随笔為你收集整理的如何datagrid分页保持每页先前选择的checkbox的状态?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 少妇扒开粉嫩小泬视频 | 国产成人欧美一区二区三区的 | 曰女同女同中文字幕 | 综合久色| 国产视频日本 | 少妇高潮一区二区三区69 | 天堂在线官网 | 日韩在线观看一区 | 国产50页| 日韩在线专区 | 激情导航 | 麻豆国产一区 | 北条麻妃一二三区 | 黄色一级网址 | 一本一道久久a久久综合蜜桃 | 筱田优av | 综合精品在线 | 国产不卡一区二区视频 | 成人福利午夜 | 思思久久99 | 在线观看成人小视频 | 男人天堂avav | 风韵丰满熟妇啪啪区老熟熟女 | 日韩av视屏| 欧美视频在线看 | 国产午夜无码精品免费看奶水 | 亚洲乱码国产一区三区 | 精品在线免费视频 | 最近更新中文字幕 | 波多野结衣一区二区三区高清av | 国产香蕉在线观看 | 日本亲近相奷中文字幕 | 成人v| 亚洲免费网站 | 99热99精品| 精品一区二区毛片 | 中文字幕第99页 | 国产熟女高潮视频 | 日本wwwxxxx| 亚洲福利影院 | 亚洲AV成人午夜无码精品久久 | 天天精品视频 | 色播激情网 | 国产福利片在线观看 | 自拍偷拍2019 | 亚洲自拍激情 | 天天综合网天天综合色 | 看a网站 | а√天堂8资源中文在线 | 亚洲欧美一区二区视频 | 欧美激情性做爰免费视频 | 中文av一区| 日韩免费专区 | 国产乱子一区二区 | 色com| 男人疯狂高潮呻吟视频 | 国产一区二区三区在线免费 | k8经典成人理伦片 | 国产又粗又猛又爽又黄的网站 | 日韩激情av在线 | 精品少妇一区二区三区在线观看 | 亚洲天堂资源网 | 日本大尺度电影免费观看全集中文版 | 日韩精品欧美在线 | 国产一及片 | 久久爱一区二区 | 国产女主播自拍 | 中文在线观看免费网站 | 操小妞 | 91传媒入口| 国产99久一区二区三区a片 | 另类小说婷婷 | www.xxx国产 | 国产aaaaaaa| 精品黑人一区二区三区在线观看 | 亚洲乱码国产乱码精品精剪 | 天天干天天色天天射 | 欧美日韩一区二区三区不卡视频 | av色在线| 成年男女免费视频网站 | 亚洲国产999 | www夜色| 国产精品免费一区二区区 | 欧美精品片 | 奇米一区| 成人免费性视频 | 三级视频在线看 | 首尔之春在线观看 | 狠狠干天天射 | 天天干天天操天天插 | 黄色成人免费观看 | 国产黄色片免费观看 | 国产精品成人午夜视频 | 免费在线色 | 精品国产一二三四区 | 免费视频色| 亚洲国产精品免费 | 老牛影视一区二区三区 | 狠狠看 |