我的下拉列表中有一个SelectedIndexChanged事件。 下面你可以看到我试图将变量设置为SelectedValue。 但它给了我旧选中项目的SelectedValue而不是新项目。如何获得新的?
protected void ddlAwesome_SelectedIndexChange(object sender, EventArgs e)
{
int ID = Convert.ToInt32(ddlAwesome.SelectedValue);
}
由于
答案 0 :(得分:0)
我认为问题在于它为您提供了默认值或第一个。
您必须阅读以下文章:http://www.codeproject.com/Articles/776840/Why-DropDownList-SelectedValue-Does-Not-Work-Insid。主要问题是你需要一个绑定。
private void BindDropDownList()
{
// Declare a Dictionary to hold all the Options with Value and Text.
Dictionary<string, string> options = new Dictionary<string, string>();
options.Add("-1", "Select Option");
options.Add("1", "Option 1");
options.Add("2", "Option 2");
options.Add("3", "Option 3");
options.Add("4", "Option 4");
options.Add("5", "Option 5");
// Bind the Dictionary to the DropDownList.
ddlDropDownId.DataSource = options;
ddlDropDownId.DataTextField = "value";
ddlDropDownId.DataValueField = "key";
ddlDropDownId.DataBind();
}
在页面加载时,你必须绑定。
if (!IsPostBack)
{
BindDropDownList();
}