【发布时间】:2013-11-25 15:08:03
【问题描述】:
我有表 tblDepartments 和列 DeptID, Department, Description。我也有下拉框drpDepartments。我想在下拉框中显示Department 列的内容。我尝试将此 C# 代码用于 winforms,但它不起作用:
drpDepartments.DataSource = dsDep.Tables["tblDepartment"];
drpDepartments.DisplayMember = "Department";
drpDepartments.ValueMember = "DeptID";
drpDepartments.Text = "Choose Department";
如何使用 ASP.NET C# 来实现?谢谢。
新代码(还是不行)
sConn = new SqlConnection(sStr);
daEmp = new SqlDataAdapter("SELECT * FROM tblEmployee", sConn);
daDep = new SqlDataAdapter("SELECT * FROM tblDepartment", sConn);
dsEmp = new DataSet();
dsDep = new DataSet();
daEmp.Fill(dsEmp, "tblEmployee");
daDep.Fill(dsDep, "tblDepartment");
dsEmp.Tables["tblEmployee"].PrimaryKey = new DataColumn[] { dsEmp.Tables["tblEmployee"].Columns["EmployeeID"] };
DataTable dt=new DataTable();
daDep.Fill(dt);
drpDepartments.DataTextField = "Department";
drpDepartments.DataValueField = "DeptID";
drpDepartments.DataSource = dt;
drpDepartments.DataBind();
【问题讨论】:
-
drpDepartments.Databind() 丢失。您也可以查看此链接stackoverflow.com/questions/14105265/dropdownlist-datasource
-
在描述中你列出了列名
DeptID, Department,但在代码中使用DepartmentID, Department,你确定你使用了正确的列名吗? -
对
DataTextField属性使用Department而不是Choose Department。 -
代码在哪个事件处理函数中?