什么是dropdownlist.selectedvalue?

时间:2019-02-20 02:58:51

标签: c# asp.net sql-server

我有一个下拉列表,可从sqlserver数据库中的表读取数据 该表有2列(ID,Name) 所以我写:

ddl.DataValueField = "ID";
ddl.DataTextField = "Name";

我要插入(-选择名称-)之类的项作为下拉列表中的第一项。所以我写

ddl.Items.Insert(0, "-- Select --");

我的问题是: 为什么当我从下拉列表中选择一个名称时, 我得到ddl.selectedvalue =该名称的ID
但是当我选择(-- Select --),时 我得到ddl.selectedvalue = (-- Select --) not 0吗?

2 个答案:

答案 0 :(得分:0)

绑定数据源并在DropDownList的第0个索引处添加自定义项目的简单流程

ddl.DataSource = YOUR_DATA_SOURCE;
ddl.DataValueField = "Id";
ddl.DataTextField = "Name";
ddl.DataBind();

// ADD YOUR CUSTOM ITEM AFTER BINDING DATASOURCE
ddl.Items.Insert(0, new ListItem("---Select---", "0"));

答案 1 :(得分:0)

实际上

ddl.Items.Insert(0, "-- Select --");

这表示下拉列表零索引处的值是“ --Select--”。现在,如果下拉列表没有同时找到文本和值...那么它也将文本复制到值字段。这就是为什么您还获得“ --Select--”值的原因 所以用这个

ddl.Items.Insert(0, new ListItem("---Select---", "0"));

同时指定文本和值。这样您就可以将所选值设为零。