如何在第一次加载页面时获取下拉列表中的所选项目?

时间:2011-05-11 08:40:40

标签: c# .net asp.net drop-down-menu

我正在寻找一个解决方案来获取DropDownList中的第一个选定项目。我想在第一次加载页面时得到它。

提前谢谢。

编辑:我在Load-event中调用此方法,但ddlNiveau2仍为空。我认为不会访问ddlNiveau1.SelectedValue。

public void FillListNiveau2()
{
    ddlNiveau2.Items.Clear();
    foreach (var item in dBAL.GetListNiveau2(ddlNiveau1.SelectedValue))
    {
        ddlNiveau2.Items.Add(item.ToString());
    }
    RemoveDuplicateItems(ddlNiveau2);
}

4 个答案:

答案 0 :(得分:12)

有一个DataBound event,在数据绑定到下拉列表后触发。当您将dataSource分配到下拉列表时,您需要在绑定到下拉列表的所有行之后选择项目

protected void DropDownList1_DataBound(object sender, EventArgs e)
{
    DropDownList1.SelectedValue // store it in some variable
}

答案 1 :(得分:4)

您可以像

一样获取所选值
string selected = drp.SelectedItem.Text;

string selected = drp.SelectedItem.Value;

加载页面后,第一个值显示为Selected,除非您通过指定SelectedIndexText/Value

进行设置

答案 2 :(得分:0)

Page_Load事件处理程序中编写以下代码:

if (!Page.IsPostBack)
{

    // Load list items ..
    dropDownList.SelectedIndex = 0;

}

请参阅DropDownList课程表格了解详情。

答案 3 :(得分:0)

当页面第一次加载时,下拉列表中没有选定的值,直到您的代码使用dropdown.SelectedValue属性设置它。这是第一次加载页面并且用户尚未与下拉列表进行交互,因此获取所选值没有意义