C# 如何从下拉列表中获取新的SelectedValue?

C# 如何从下拉列表中获取新的SelectedValue?,c#,drop-down-menu,C#,Drop Down Menu,我的dropdownlist上有一个SelectedIndexChanged事件。 下面您可以看到我正在尝试将一个变量设置为SelectedValue。 但它给我的是旧选中项目的SelectedValue,而不是新项目的SelectedValue。我怎样才能得到新的呢 protected void ddlAwesome_SelectedIndexChange(object sender, EventArgs e) { int ID = Convert.ToInt32(ddlAwesom

我的dropdownlist上有一个SelectedIndexChanged事件。 下面您可以看到我正在尝试将一个变量设置为SelectedValue。 但它给我的是旧选中项目的SelectedValue,而不是新项目的SelectedValue。我怎样才能得到新的呢

protected void ddlAwesome_SelectedIndexChange(object sender, EventArgs e)
{
     int ID = Convert.ToInt32(ddlAwesome.SelectedValue);
}

谢谢

我认为问题在于它给出了默认值或第一个值

您必须阅读以下文章:。主要问题是您需要一个绑定

    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();
    }