我不确定在这些方面我做错了什么。这些代码应该从数据库中获取数据并将其分配到组合框中。但是,组合框列表中没有显示任何数据。我的代码:
public void employeeListCombo()
{
Employee employeeList = new Employee();
Dataset employees = employeeList.getAllEmployee();
foreach(DataRow dr in employees.Tables[0].Rows){
String selectedEmp = dr["firstName"].ToString();
comboEmployee.DataSource = selectedEmp;
}
}
由于您似乎想在上使用DataBinding
,因此ComboBox
您应该执行以下操作:
public void employeeListCombo()
{
var employeeList = new Employee();
var employees = employeeList.getAllEmployee();
comboEmployee.DataSource = employees.Tables[0].DefaultView;
comboEmployee.DisplayMember = "firstName";
}
但是,您的原始代码也可以使用:
public void employeeListCombo()
{
var employeeList = new Employee();
var employees = employeeList.getAllEmployee();
if (employees.Tables.Count > 0)
{
foreach(DataRow dr in employees.Tables[0].Rows)
{
var selectedEmp = dr["firstName"] as String;
if (!String.IsNullOrEmpty(selectedEmp))
comboEmployee.Items.Add(selectedEmp);
}
}
}
选择取决于您ComboBox
稍后要处理的项目的含义。如果您需要获取的不仅仅是选定的字符串,还可以从绑定中受益。否则,第二种方法很好。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句