ASP.NET WebForms 中,当用户控件中的 SelectedIndexChanged 事件未触发时,可能是由于以下几个原因导致的:
...
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ddlItems.SelectedIndexChanged += new EventHandler(ddlItems_SelectedIndexChanged);
}
}
protected void ddlItems_SelectedIndexChanged(object sender, EventArgs e)
{
// 事件处理逻辑
}
protected void Page_Load(object sender, EventArgs e)
{
Page.ViewStateMode = ViewStateMode.Enabled;
// 其他代码
}
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
// 不要在这里重新创建控件
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CreateControls();
}
}
private void CreateControls()
{
// 创建控件的代码
}
通过确保以上几个方面的正确设置,您应该能够解决 ASP.NET WebForms 用户控件中 SelectedIndexChanged 事件未触发的问题。