Re: ASP.NET Data Controls Hi, Oxygen:
You can save the value of checkbox in Session when PageIndexChanging and retrieve them from Session when PreRender. Here is an example code.
Hope it helps.
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
Response.Write(GridView1.PageIndex.ToString());
int d = GridView1.PageCount;
bool[] values = new bool[GridView1.PageSize];
CheckBox chb;
int count = 0;
for (int i = 0; i < GridView1.Rows.Count; i++)
{
chb = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
if (chb != null)
{
values[i] = chb.Checked;
}
}
Session["page" + GridView1.PageIndex] = values;
}
protected void GridView1_PreRender(object sender, EventArgs e)
{
if (Session["page" + GridView1.PageIndex] != null)
{
CheckBox chb;
bool[] values = (bool[])Session["page" + GridView1.PageIndex];
for (int i = 0; i < GridView1.Rows.Count; i++)
{
chb = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
chb.Checked = values[i];
}
}
}
If you have any doubts about it, please feel free to post back. |