DropDownlist总是返回第一个项目

时间:2012-08-20 03:16:37

标签: asp.net drop-down-menu

aspx页面有一个UC。在aspx.cs中

if(!isPostBack){
    UC.DataBind();
 }
这个UC还有一个用户控制UC1。在UC.ascx.cs

 public void DataBind(){
   UC1.DataBind();
 }

在UC1中

public void  DataBind(){
   List<Registeration> list = ... VAlues from database;
   dropdownlist1.DataSource = list;
   DropDownList1.DataTextField = 'username';
   DropDownList1.DataValueField = 'username';
   DropDownList1.databind();
}  

public void button1_click(){
    string selectedValue = DropDownList1.SelectedItem.Text;
 } 

问题:字符串selectedValue的值总是来自第一个项....

评论:DropDownList位于updatePanel

2 个答案:

答案 0 :(得分:0)

除了DataTextField之外,请尝试填充DropDownLost1.DataValueField。由于未分配,因此渲染的DropDown中的所有项目可能都为空。要检查这一点,您可以查看FireBug中呈现的HTML以查看显示的内容。

答案 1 :(得分:0)

您似乎正在做的一切正确,但您还需要在用户控件上添加isPostBack()