我写了一个动态添加控件的程序,程序如下所示,现在的问题是我不想使用动态控件中的viewstate,
但是设置EnableViewState不起作用,当我设置cbl的第一项选中时,每次postback都是第一项选中,请大家帮忙看一看:
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
TableCell tc2=new TableCell();
CheckBoxList cbl=new CheckBoxList();
cbl.ID="ckb1";
for(int i=0;i<7;i++)
{
ListItem li=new ListItem("test","test");
li.Selected=false;
cbl.Items.Add(li);
cbl.Controls[0].EnableViewState=false;
}
cbl.AutoPostBack=false;
cbl.EnableViewState=false;
CheckBox cbx=(CheckBox)(this.FindControl("ckb1_0"));
tc2.Controls.Add(cbl);
}
但是设置EnableViewState不起作用,当我设置cbl的第一项选中时,每次postback都是第一项选中,请大家帮忙看一看:
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
TableCell tc2=new TableCell();
CheckBoxList cbl=new CheckBoxList();
cbl.ID="ckb1";
for(int i=0;i<7;i++)
{
ListItem li=new ListItem("test","test");
li.Selected=false;
cbl.Items.Add(li);
cbl.Controls[0].EnableViewState=false;
}
cbl.AutoPostBack=false;
cbl.EnableViewState=false;
CheckBox cbx=(CheckBox)(this.FindControl("ckb1_0"));
tc2.Controls.Add(cbl);
}
{
if(!Page.IsPostBack) //这里加这一句
{
...; //你上面Page_Load里面的代码
}
}