我有这个 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(使用前将#替换为@)