C# 为下拉列表项指定不同的值和文本

C# 为下拉列表项指定不同的值和文本,c#,asp.net,database,drop-down-menu,code-behind,C#,Asp.net,Database,Drop Down Menu,Code Behind,我试图在pageload上用来自batabase的数据填充一个下拉列表 填充时,我希望下拉项的显示文本不同于 例如:下拉列表将db中的标题列显示为UI上的文本,但其“值”应为db中的ID列 我如何做到这一点 目前我的代码是这样的:drpReleaseTitle是下拉列表的ID protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { SqlConnection con1 =

我试图在pageload上用来自batabase的数据填充一个下拉列表

填充时,我希望下拉项的显示文本不同于

例如:下拉列表将db中的标题列显示为UI上的文本,但其“值”应为db中的ID列

我如何做到这一点

目前我的代码是这样的:drpReleaseTitle是下拉列表的ID

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        SqlConnection con1 = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);
        con1.Open();

        SqlCommand releaseTitlecmd = new SqlCommand("select Title from LWMDemo_ReleaseInfo order by ReleaseID", con1);
        SqlDataReader releaseTitledr = releaseTitlecmd.ExecuteReader();
        while (releaseTitledr.Read())
        {
            drpReleaseTitle.Items.Add(releaseTitledr.GetValue(0).ToString());
        }
        con1.Close();
    }
}
试试这个

drpReleaseTitle.Items.Add(new ListItem("yourtext", "yourvalue"));

最好使用Dataset而不是Data Reader,因为它使用断开连接的体系结构,所以可以在关闭连接后使用

 protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        SqlConnection con1 = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);
        con1.Open();

        SqlCommand releaseTitlecmd = new SqlCommand("select Title from LWMDemo_ReleaseInfo order by ReleaseID", con1);
       SqlDataAdapter sda = new SqlDataAdapter();
        sda.SelectCommand = Cmd;
        sda.Fill(ds);
        if(ds!=null && ds.table.count>0){
        if(ds.table[0]!=null && ds.table[0].rows.count>0){
            drpReleaseTitle.DataSource=ds.table[0].Title;  //Title Column
             drpReleaseTitle.DataSourceID=ds.table[0].ID;  //ID Column
        }
    }
        con1.Close();
    }
}

若您将尝试向下拉列表中的项目添加字符串,它将创建一个项目,该项目将文本和值作为您的字符串。您需要添加新的ListItem。ListItem包含以文本和值作为参数的构造函数。关于这门课的更多信息,你可以阅读