在ComboBox里有一个DisplayMember 要显示的值 ValueMember 实际要传的一个值
那在DropdownList没有这属性那我要实现同样功能应该怎么做就是显示的是一个比如说是一个产品的名称但我选择DropdownList中的某一项时传过去的是一个产品的ID

解决方案 »

  1.   

    String searchText = SearchTextBox.Text.Trim();
    int index=this.SearchDropDownList.SelectedIndex;
    Response.Redirect((new StringBuilder(PageBase.UrlBase))
    .Append("/searchresults.aspx?fullType=")
    .Append(Server.HtmlEncode(SearchDropDownList.Items[index].Text))
    .Append("&text=")
    .Append(Server.UrlEncode(searchText)).ToString(), false);
      

  2.   

    这位大哥想的太复杂了我没有要跨页面传值
    其实我就是在一个页面上最主要有一个DropDownList的一个控件和一个DataGrid的一个控件
    主是在DropDownList中选择某一项在DataGrid中做相应改变
    public static void Bind_Speciality(DropDownList list)
    {
        list.Items.Clear();
                list.Items.Add(new ListItem("选择专业"));
    SqlCommand cmd =CommandBuild.Buildcmd("SelectSpeciality");  //这里的CommandBuild是另外写的一个类Buildcmd中的"SelectSpeciality中是一个存储过程"

    SqlDataReader reader = cmd.ExecuteReader();
    while(reader.Read())
    {
                   list.Items.Add(new ListItem(reader["speciality_name"].ToString().Trim(),reader["speciality_id"].ToString().Trim()));
    }
    list.DataBind();
    reader.Close();
    }//下面是我在SelectedIndexChanged的事件中写的代码但好像有问题不知道怎么解决
    private void ddListSpeciality_SelectedIndexChanged(object sender, System.EventArgs e)
    {
       SqlCommand cmd = CommandBuild.Buildcmd("SelectStudentInfo");
       cmd.CommandType = CommandType.StoredProcedure;
       cmd.Parameters.Add("@speciality_id",ddListSpeciality.SelectedValue.Trim());
       SqlAda.SelectCommand = cmd;
       SqlAda.Fill(ds);
       dataGridStudents.DataSource = ds.Tables[0].DefaultView;
       dataGridStudents.DataBind();
    }
      

  3.   

    DropdownList 有两个属性 DataTextField 和 DataValueField
    DataTextField 为产品的名称, 
    DataValueField 为产品的ID,
    这样就可以通过DropdownList.SelectedValue获取到选中的产品的ID
      

  4.   

    我上面说的情况是绑定数据源的时候哦,
    DataTextField 和 DataValueField 对应的都是列名
      

  5.   

    DataTextField 和 DataValueField綁定后一個顯示DISPLAY VALUES,另一個顯示實際值.
    COMBOX也可以的。