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

我正在寻找一个解决方案来获取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); } 

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

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

您可以获得所选的值

 string selected = drp.SelectedItem.Text; 

要么

 string selected = drp.SelectedItem.Value; 

加载页面时,除非通过指定SelectedIndexText/Value来设置,否则第一个值将显示为Selected

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

 if (!Page.IsPostBack) { // Load list items .. dropDownList.SelectedIndex = 0; } 

请参阅DropDownList类表单更多信息。

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