【发布时间】:2011-06-27 15:17:35
【问题描述】:
我有一个下拉列表控件,其中包含正确触发的 selectedindexchanged 事件。但是,当您从列表中选择一个项目时,返回给 selectedindexchanged 事件的索引值不会改变;列表框弹出到列表中的第一个项目。任何帮助,将不胜感激。 ~苏珊~
ASP 下拉列表控件:
<asp:DropDownList ID="CuisineList" runat="server" Width="100"
AutoPostBack = "true" onselectedindexchanged="CuisineList_SelectedIndexChanged" >
</asp:DropDownList>
在页面加载事件中控制数据绑定:
protected void Page_Load(object sender, EventArgs e)
{
//Load drop down lists for restaurant selection
BLgetMasterData obj = new BLgetMasterData();
var cusineList = obj.getCuisines();
CuisineList.DataSource = cusineList;
CuisineList.DataBind();
CuisineList.Items.Insert(0, "Any");
SELECTEDINDEXCHANGEDEVENT:
protected void CuisineList_SelectedIndexChanged(object sender, EventArgs e)
{
if (IsPostBack)
{
string def = this.CuisineList.SelectedItem.Value;
//aLWAYS returns index '0'
}
}
【问题讨论】:
-
你是如何触发事件的?你用的是键盘还是鼠标?信不信由你,我遇到了一种方法有效而另一种方法无效的问题!
-
绑定的值是什么?如果该值始终为零,则所选项目将是列表中值 = 0 的第一个项目 - 即“任何”。
标签: c# .net asp.net drop-down-menu