我的项目中有这个模块,其中有 2 个网格视图。一个用于主菜单模块,另一个用于它的子菜单。我创建了一个列表,以便当我的主菜单模块上的一行被选中并且它具有相应的子菜单时,它将显示在 SubMenu Gridview 上。
现在,当我回到那个页面(我使用会话)时,我可以看到我的 SubMenuGridview,但我注意到我勾选的复选框都消失了。
我的问题是我的页面如何记住我选中的复选框,无论是从我的主菜单模块网格视图还是从我的子菜单网格视图。
protected void cbxSelect_CheckedChanged(object sender, EventArgs e)
{
SubMenuGrid.DataSource = null;
SubMenuGrid.DataBind();
Business.SubMenuModules sub = new Business.SubMenuModules();
List<oSubList> oList = new List<oSubList>();
int counter = 0;
foreach (GridViewRow nRow in gvModuleList.Rows)
{
Int32 intModID = Convert.ToInt32(nRow.Cells[0].Text);
CheckBox chkBx = (CheckBox)nRow.FindControl("cbxSelect");
if (chkBx.Checked == true)
{
counter = counter + 1;
var oModList = sub.GetAllMenuPerModuleID(intModID);
if (oModList.Count > 0)
{
foreach (var rec in oModList)
{
oSubList olist = new oSubList
{
ID = rec.ID,
ModuleID = rec.ModuleID,
Submenu = rec.Submenu,
Description = rec.Description
};
oList.Add(olist);
}
Session["list"]=oList;
SubMenuGrid.DataSource = oList;
SubMenuGrid.DataBind();
}
}
}
}