关于在PostBack自定义控件问题无法保存DropDownList绑定的请教,高手请进
我做了个自定义控件,里面包含了一个DropDownList
在PageLoad初绑定了数据源,PostBack后DropDownList变成空了,这个问题要怎么解决?
private DropDownList ddlBox = new DropDownList();
protected override void CreateChildControls()
{
Controls.Add(ddlBox);
}
protected override void RenderContents(HtmlTextWriter output)
{
ddlBox.RenderControl(output);
}
public override void DataBind()
{
ddlBox.DataBind();
}
------解决方案--------------------private DropDownList ddlBox = new DropDownList();
protected override void CreateChildControls()
{
Controls.Add(ddlBox);
}
改成:
private DropDownList ddlBox;
protected override void CreateChildControls()
{
ddlBox = new DropDownList();
Controls.Add(ddlBox);
}
------解决方案--------------------Controls.Add(ddlBox);
放到init里面去.
------解决方案--------------------private DropDownList ddlBox = new DropDownList();
每当执行程序后你写的位置总是要重新执行的
这样每次都要重新定义一次
time_is_life(今夜太冷:http://timeislife.blog.sohu.com) 说的是正确的
------解决方案--------------------对于这种自定义控件最好的方法就是在
pageload中每次都绑定一次
------解决方案--------------------估计你的自定义控件里面的属性没有使用viewstate[ " "],所以没有保存状态