我在是用DropDownList的时候,有两套方案
方案一:
this.ddl_course.Items.Add("所有科目");
SqlConnection con = DB.CreateDB();
con.Open();
SqlDataAdapter sda = new SqlDataAdapter();
sda.SelectCommand = new SqlCommand("select courseID,courseName from course", con);
DataSet ds = new DataSet();
sda.Fill(ds, "course");
this.ddl_course.DataSource = ds.Tables["course"];
this.ddl_course.DataValueField = "courseID";
foreach (DataRow row in ds.Tables["course"].Rows)
{
this.ddl_course.Items.Add(row["courseName"].ToString());
}
程序没有错,就是这样动态生成的DropDownList在Text和Value的值是一样的,
我想让每选中的value的值等于courseID,该怎么办?
方案二:
SqlConnection con = DB.CreateDB();
con.Open();
SqlCommand cmd = new SqlCommand("select courseID,courseName from course", con);
SqlDataReader sdr = cmd.ExecuteReader();
this.ddl_course.DataSource = sdr;
this.ddl_course.DataTextField = "courseName";
this.ddl_course.DataValueField = "courseID";
this.ddl_course.DataBind();
sdr.Close();
这样什么都能用,Text和Value也不一样,达到目的,但是就是不能利用下列语句新增一项.
this.ddl_course.Items.Add("所有科目");
很郁闷,不知道为什么?
大家帮帮忙?非常感谢!