当我更改 DropDownList 上的选择时,为什么事件未触发?

2024-02-02

我有这个 asp net drp 框:

<asp:DropDownList ID="ddlLayersList"
        runat="server"
        BackColor="#FFFFC0"
        CssClass="form-control fullwidth" OnTextChanged="ddlLayersList_SelectedIndexChanged" >
</asp:DropDownList>

以下是我填写下拉框的方法:

private void SetLayers(Dictionary<string, string> layers)
{
    ddlLayersList.DataSource = layers;
    ddlLayersList.DataValueField = "Key";
    ddlLayersList.DataTextField = "Value";
    ddlLayersList.DataBind();
    ddlLayersList.Items.Insert(0, "-Select Item-");
}

这是事件背后的代码:

protected void ddlLayersList_SelectedIndexChanged(object sender, EventArgs e)
{
}       

当我从下拉框中选择项目时,事件未触发。 知道为什么当我更改选择时事件没有被触发DropDownList?


您需要设置自动回发 https://learn.microsoft.com/en-us/dotnet/api/system.web.ui.webcontrols.listcontrol.autopostback?view=netframework-4.7.2财产给True.

<asp:DropDownList ID="ddlLayersList" AutoPostBack="True">

该房产的价值:

如果每当以下情况时自动回发到服务器,则为 true 用户更改列表的选择;否则为假。默认 是假的

您还需要设置OnSelectedIndexChanged https://learn.microsoft.com/en-us/dotnet/api/system.web.ui.webcontrols.listcontrol.onselectedindexchanged?view=netframework-4.7.2事件而不是OnTextChanged:

<asp:DropDownList ID="ddlLayersList" 
       AutoPostBack="true" runat="server" 
       OnSelectedIndexChanged="ddlLayersList_SelectedIndexChanged">
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当我更改 DropDownList 上的选择时,为什么事件未触发? 的相关文章

随机推荐