C# 仅返回一项c时的组合框
我使用SQL命令从数据库中选择数据,我想从表中选择要在combox中读取的数据,但combox似乎只显示一项,而不是该特定列中的所有项 以下是我的sql语句:C# 仅返回一项c时的组合框,c#,C#,我使用SQL命令从数据库中选择数据,我想从表中选择要在combox中读取的数据,但combox似乎只显示一项,而不是该特定列中的所有项 以下是我的sql语句: public void SelectEmployee() { Query = "SELECT Employee_Name FROM TblEmployees"; reader = conn.ExecuteStatement(Query); while
public void SelectEmployee()
{
Query = "SELECT Employee_Name FROM TblEmployees";
reader = conn.ExecuteStatement(Query);
while (reader.Read())
{
ComboBox1.Text = reader["Employee_Name"].ToString();
}
conn.CloseConnection();
}
这样运行很平稳,但组合框只显示一个名称,而不是10个名称。您在读卡器上循环,但继续将读卡器的当前值指定给组合文本属性,从而覆盖以前的指定 相反,将列Employee_Name的每个值添加到Items集合中,它们将显示在combox的下拉列表中,用户可以选择它们
public void SelectEmployee()
{
Query = "SELECT Employee_Name FROM TblEmployees";
reader = conn.ExecuteStatement(Query);
while (reader.Read())
{
ComboBox1.Items.Add(reader["Employee_Name"].ToString());
}
conn.CloseConnection();
}
我们不知道ExecuteStatement到底做了什么,但是通过这个while循环,您只将Employee_Name列的最后一个值设置为.Text属性 您可以将其添加为项目,而不是将其作为.Text属性,如
while (reader.Read())
{
ComboBox1.Items.Add(reader["Employee_Name"].ToString());
}