呼叫下拉列表 手动列出选定的索引更改事件

本文关键字:索引 事件 下拉列表 呼叫 | 更新日期: 2023-09-27 17:56:32

>我有一个下拉列表,用于填充页面加载事件。

private void FillSponsor()
    {
        ddlSponsor.DataSource = Db.VCT_SPONSORs.Where(x => x.IS_ACTIVE.GetValueOrDefault() && x.IS_APPROVED.GetValueOrDefault());
        ddlSponsor.DataBind();
    }

现在我想要的是将其他下拉列表与上述下拉列表的第一个值绑定。 我的第二个下拉列表是:

protected void ddlSponsor_SelectedIndexChanged(object sender, EventArgs e)
    {
        ddlDivision.DataSource = Db.VCT_SPONSOR_DIVISIONs.Where(x => x.SPONSOR_ID==SponsorID);
        ddlDivision.DataBind();
        ddlDivision.Items.Insert(0, new ListItem("All", "0"));
    }

我的问题是如何从 FillSponsor 方法调用ddlSponsor_SelectedIndexChanged事件。我的两个下拉列表都在更新面板中。

呼叫下拉列表 手动列出选定的索引更改事件

你的意思是你如何调用该方法?

ddlSponsor_SelectedIndexChanged(this, EventArgs.Empty);

您可以改用日期绑定事件。 喜欢...

protected void ddlSponsor_DataBound(object sender, EventArgs e)
{
    ddlDivision.DataSource = Db.VCT_SPONSOR_DIVISIONs.Where(x => x.SPONSOR_ID==SponsorID);
    ddlDivision.DataBind();
    ddlDivision.Items.Insert(0, new ListItem("All", "0"));
}
我相信

您的主要问题是在单独的更新面板中具有控件。

http://forums.asp.net/t/1426233.aspx

该链接中的代码示例:

<asp:UpdatePanel runat="server" ID='asdsd' UpdateMode="Conditional">
 <ContentTemplate>
    ...DropDownList1...
</ContentTemplate>
<Triggers>
    <asp:AsyncPostBackTrigger ControlID='DropDownList2' EventName='SelectedIndexChanged' />
</Triggers>

我相信你所追求的是AsyncPostBackTriggers,不要忘记UpdateMode="Conditional"。