我有一个带有 DropDownList 的用户控件AutoPostBack = true
,还有一个 aspx 页面来显示这个控件。我在页面的 OnInit 方法中重新创建用户控件
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
var list = (List<Control>)Session[Controls];
if (list != null)
{
foreach (var control in list)
{
var uc = (Control)LoadControl(ControlPath);
uc.SetDropDownState(control.state);
PlaceHolderQuestion.Controls.Add(uc);
}
}
}
因此,在重新创建时,我正在恢复 DropDown 选择,它是第一次工作,但是当我再次更改选择时,OnSelectedIndexChanged 事件不会触发,这很明显,因为我首先在 OnInit 中恢复 DropDown 选择,因此没有 OnSelectedIndexChanged 事件,什么也没有已更改,您能建议一些解决方法吗?
更新
var uc = (Control)LoadControl(ControlPath); 需要保持用户控制事件